Home | History | Annotate | Download | only in Lexer
      1 // RUN: %clang_cc1 -E %s -o - | FileCheck --check-prefix=CHECK-PED-NONE %s
      2 // RUN: %clang_cc1 -pedantic-errors -E %s -o - | FileCheck --check-prefix=CHECK-PED-ERR %s
      3 
      4 // CHECK-PED-NONE: no_dummy_extension
      5 #if !__has_extension(dummy_extension)
      6 int no_dummy_extension();
      7 #endif
      8 
      9 // Arbitrary feature to test that has_extension is a superset of has_feature
     10 // CHECK-PED-NONE: attribute_overloadable
     11 #if __has_extension(attribute_overloadable)
     12 int attribute_overloadable();
     13 #endif
     14 
     15 // CHECK-PED-NONE: has_c_static_assert
     16 // CHECK-PED-ERR: no_c_static_assert
     17 #if __has_extension(c_static_assert)
     18 int has_c_static_assert();
     19 #else
     20 int no_c_static_assert();
     21 #endif
     22 
     23 // CHECK-PED-NONE: has_c_generic_selections
     24 // CHECK-PED-ERR: no_c_generic_selections
     25 #if __has_extension(c_generic_selections)
     26 int has_c_generic_selections();
     27 #else
     28 int no_c_generic_selections();
     29 #endif
     30 
     31 // CHECK-PED-NONE: has_c_alignas
     32 // CHECK-PED-ERR: no_c_alignas
     33 #if __has_extension(c_alignas)
     34 int has_c_alignas();
     35 #else
     36 int no_c_alignas();
     37 #endif
     38 
     39 // Arbitrary feature to test that the extension name can be surrounded with
     40 // double underscores.
     41 // CHECK-PED-NONE: has_double_underscores
     42 #if __has_extension(__c_alignas__)
     43 int has_double_underscores();
     44 #endif
     45