diff options
Diffstat (limited to 'test/Preprocessor/has_attribute.c')
-rw-r--r-- | test/Preprocessor/has_attribute.c | 30 |
1 files changed, 21 insertions, 9 deletions
diff --git a/test/Preprocessor/has_attribute.c b/test/Preprocessor/has_attribute.c index 825fa06df6..80f53a52fe 100644 --- a/test/Preprocessor/has_attribute.c +++ b/test/Preprocessor/has_attribute.c @@ -1,14 +1,26 @@ -// RUN: %clang_cc1 %s -// RUN: %clang_cc1 %s -E -#ifndef __has_attribute -#error Should have __has_attribute +// RUN: %clang_cc1 -E %s -o - | FileCheck %s + +// CHECK: always_inline +#if __has_attribute(always_inline) +int always_inline(); +#endif + +// CHECK: __always_inline__ +#if __has_attribute(__always_inline__) +int __always_inline__(); +#endif + +// CHECK: no_dummy_attribute +#if !__has_attribute(dummy_attribute) +int no_dummy_attribute(); #endif -#if __has_attribute(something_we_dont_have) -#error Bad +// CHECK: has_has_attribute +#ifdef __has_attribute +int has_has_attribute(); #endif -#if !__has_attribute(__always_inline__) || \ - !__has_attribute(always_inline) -#error Clang should have this +// CHECK: has_something_we_dont_have +#if !__has_attribute(something_we_dont_have) +int has_something_we_dont_have(); #endif |