diff options
Diffstat (limited to 'clang/test')
| -rw-r--r-- | clang/test/CodeGen/function-attributes.c | 8 | ||||
| -rw-r--r-- | clang/test/Sema/return-noreturn.c | 4 |
2 files changed, 9 insertions, 3 deletions
diff --git a/clang/test/CodeGen/function-attributes.c b/clang/test/CodeGen/function-attributes.c index 6cbf40ba220..886bd8d2fb5 100644 --- a/clang/test/CodeGen/function-attributes.c +++ b/clang/test/CodeGen/function-attributes.c @@ -32,10 +32,16 @@ void __attribute__((always_inline)) f8(void) { } // CHECK: call void @f9_t() // CHECK: noreturn -// CHECK: { +// CHECK: } void __attribute__((noreturn)) f9_t(void); void f9(void) { f9_t(); } +// CHECK: call void @f9a() +// CHECK: noreturn +// CHECK: } +_Noreturn void f9a(void); +void f9b(void) { f9a(); } + // FIXME: We should be setting nounwind on calls. // CHECK: call i32 @f10_t() // CHECK: readnone diff --git a/clang/test/Sema/return-noreturn.c b/clang/test/Sema/return-noreturn.c index 5dd6693373a..6d521eb017c 100644 --- a/clang/test/Sema/return-noreturn.c +++ b/clang/test/Sema/return-noreturn.c @@ -36,7 +36,7 @@ test4() { test2_positive(); } -// FIXME: do not warn here. -_Noreturn void test5() { // expected-warning {{could be declared with attribute 'noreturn'}} +// Do not warn here. +_Noreturn void test5() { test2_positive(); } |

