From: Jean-Daniel Dupas Date: Thu, 1 Mar 2012 17:45:53 +0000 (+0000) Subject: Merge __has_attribute tests. Patch by Jonathan Sauer! X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9a0b7052432b572024a95cf5026351b859add9bd;p=clang Merge __has_attribute tests. Patch by Jonathan Sauer! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151819 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/Lexer/has_attribute.cpp b/test/Lexer/has_attribute.cpp deleted file mode 100644 index 9a58a3013f..0000000000 --- a/test/Lexer/has_attribute.cpp +++ /dev/null @@ -1,12 +0,0 @@ -// RUN: %clang_cc1 -E %s -o - | FileCheck %s - -// 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 - 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