1 // { dg-do compile { target c++98_only } } 2 // { dg-options "" } 3 4 // C++98 features: 5 6 #ifndef __cpp_rtti 7 # error "__cpp_rtti" 8 #elif __cpp_rtti != 199711 9 # error "__cpp_rtti != 199711" 10 #endif 11 12 #ifndef __cpp_exceptions 13 # error "__cpp_exceptions" 14 #elif __cpp_exceptions != 199711 15 # error "__cpp_exceptions != 199711" 16 #endif 17 18 // C++11 features allowed in C++98: 19 20 #ifndef __cpp_threadsafe_static_init 21 # error "__cpp_threadsafe_static_init" 22 #elif __cpp_threadsafe_static_init != 200806 23 # error "__cpp_threadsafe_static_init != 200806" 24 #endif 25 26 // C++14 features allowed in C++98 in non-ANSI modes: 27 28 #ifndef __cpp_binary_literals 29 # error "__cpp_binary_literals" 30 #elif __cpp_binary_literals != 201304 31 # error "__cpp_binary_literals != 201304" 32 #endif 33 34 // GNU VLA support: 35 36 #ifndef __cpp_runtime_arrays 37 # error "__cpp_runtime_arrays" 38 #elif __cpp_runtime_arrays != 198712 39 # error "__cpp_runtime_arrays != 198712" 40 #endif 41