1// RUN: %clang_cc1 -triple arm-unknown-linux -E %s -o - | FileCheck %s
2
3// CHECK: always_inline
4#if __has_attribute(always_inline)
5int always_inline();
6#endif
7
8// CHECK: __always_inline__
9#if __has_attribute(__always_inline__)
10int __always_inline__();
11#endif
12
13// CHECK: no_dummy_attribute
14#if !__has_attribute(dummy_attribute)
15int no_dummy_attribute();
16#endif
17
18// CHECK: has_has_attribute
19#ifdef __has_attribute
20int has_has_attribute();
21#endif
22
23// CHECK: has_something_we_dont_have
24#if !__has_attribute(something_we_dont_have)
25int has_something_we_dont_have();
26#endif
27
28// rdar://10253857
29#if __has_attribute(__const)
30 int fn3() __attribute__ ((__const));
31#endif
32
33#if __has_attribute(const)
34 static int constFunction() __attribute__((const));
35#endif
36
37// CHECK: has_no_volatile_attribute
38#if !__has_attribute(volatile)
39int has_no_volatile_attribute();
40#endif
41
42// CHECK: has_arm_interrupt
43#if __has_attribute(interrupt)
44  int has_arm_interrupt();
45#endif
46
47// CHECK: does_not_have_dllexport
48#if !__has_attribute(dllexport)
49  int does_not_have_dllexport();
50#endif
51