has_extension_cxx.cpp revision 7b156ddae822a546aa9e8b23d683ac76da8e8ac8
1// RUN: %clang_cc1 -E %s -o - | FileCheck %s
2
3// CHECK: c_static_assert
4#if __has_extension(c_static_assert)
5int c_static_assert();
6#endif
7
8// CHECK: c_generic_selections
9#if __has_extension(c_generic_selections)
10int c_generic_selections();
11#endif
12
13// CHECK: has_deleted_functions
14#if __has_extension(cxx_deleted_functions)
15int has_deleted_functions();
16#endif
17
18// CHECK: has_inline_namespaces
19#if __has_extension(cxx_inline_namespaces)
20int has_inline_namespaces();
21#endif
22
23// CHECK: has_override_control
24#if __has_extension(cxx_override_control)
25int has_override_control();
26#endif
27
28// CHECK: has_range_for
29#if __has_extension(cxx_range_for)
30int has_range_for();
31#endif
32
33// CHECK: has_reference_qualified_functions
34#if __has_extension(cxx_reference_qualified_functions)
35int has_reference_qualified_functions();
36#endif
37
38// CHECK: has_rvalue_references
39#if __has_extension(cxx_rvalue_references)
40int has_rvalue_references();
41#endif
42
43#if __has_extension(cxx_local_type_template_args)
44int has_local_type_template_args();
45#else
46int no_local_type_template_args();
47#endif
48
49// CHECK: has_local_type_template_args
50