has_extension_cxx.cpp revision 629bc52604e62f016474314077193ed30f8782f9
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// CHECK: has_local_type_template_args
44#if __has_extension(cxx_local_type_template_args)
45int has_local_type_template_args();
46#endif
47
48// CHECK: has_binary_literals
49#if __has_extension(cxx_binary_literals)
50int has_binary_literals();
51#endif
52
53// CHECK: has_variable_templates
54#if __has_extension(cxx_variable_templates)
55int has_variable_templates();
56#endif
57