xref: /llvm-project/clang/test/CodeGen/incomplete-function-type-2.c (revision a20874276be777bed4f34c52438efd66798c2ec5)
1 // RUN: %clang_cc1 -triple x86_64-apple-darwin -emit-llvm -o - %s | FileCheck %s
2 
3 // PR14355: don't crash
4 // Keep this test in its own file because CodeGenTypes has global state.
5 // CHECK: define{{.*}} void @test10_foo(ptr noundef %p1) [[NUW:#[0-9]+]] {
6 struct test10_B;
7 typedef struct test10_B test10_F3(double);
8 void test10_foo(test10_F3 p1);
9 struct test10_B test10_b(double);
test10_bar(void)10 void test10_bar(void) {
11   test10_foo(test10_b);
12 }
13 struct test10_B {};
test10_foo(test10_F3 p1)14 void test10_foo(test10_F3 p1)
15 {
16   p1(0.0);
17 }
18 
19 // CHECK: attributes [[NUW]] = { noinline nounwind{{.*}} }
20