9c3910e03689001bc74b446041ee32d0e0605d8f
[platform/upstream/cmake.git] / Tests / CompileFeatures / genex_test.cpp
1 #ifndef EXPECT_FINAL
2 #  error EXPECT_FINAL not defined
3 #endif
4 #ifndef EXPECT_INHERITING_CONSTRUCTORS
5 #  error EXPECT_INHERITING_CONSTRUCTORS not defined
6 #endif
7 #ifndef EXPECT_INHERITING_CONSTRUCTORS_AND_FINAL
8 #  error EXPECT_INHERITING_CONSTRUCTORS_AND_FINAL not defined
9 #endif
10 #ifndef EXPECT_OVERRIDE_CONTROL
11 #  error EXPECT_OVERRIDE_CONTROL not defined
12 #endif
13
14 #ifdef TEST_CXX_STD
15 #  if !HAVE_CXX_STD_11
16 #    error HAVE_CXX_STD_11 is false with CXX_STANDARD == 11
17 #  endif
18 #  if HAVE_CXX_STD_14 && !defined(ALLOW_LATER_STANDARDS)
19 #    error HAVE_CXX_STD_14 is true with CXX_STANDARD == 11
20 #  endif
21 #  if HAVE_CXX_STD_17 && !defined(ALLOW_LATER_STANDARDS)
22 #    error HAVE_CXX_STD_17 is true with CXX_STANDARD == 11
23 #  endif
24 #  if HAVE_CXX_STD_20 && !defined(ALLOW_LATER_STANDARDS)
25 #    error HAVE_CXX_STD_20 is true with CXX_STANDARD == 11
26 #  endif
27 #  if HAVE_CXX_STD_23 && !defined(ALLOW_LATER_STANDARDS)
28 #    error HAVE_CXX_STD_23 is true with CXX_STANDARD == 11
29 #  endif
30 #endif
31
32 #if !HAVE_OVERRIDE_CONTROL
33 #  if EXPECT_OVERRIDE_CONTROL
34 #    error "Expect override control feature"
35 #  endif
36 #else
37 #  if !EXPECT_OVERRIDE_CONTROL
38 #    error "Expect no override control feature"
39 #  endif
40 #endif
41
42 #if !HAVE_AUTO_TYPE
43 #  error Expect cxx_auto_type support
44 #endif
45
46 #if !HAVE_INHERITING_CONSTRUCTORS
47 #  if EXPECT_INHERITING_CONSTRUCTORS
48 #    error Expect cxx_inheriting_constructors support
49 #  endif
50 #else
51 #  if !EXPECT_INHERITING_CONSTRUCTORS
52 #    error Expect no cxx_inheriting_constructors support
53 #  endif
54 #endif
55
56 #if !HAVE_FINAL
57 #  if EXPECT_FINAL
58 #    error Expect cxx_final support
59 #  endif
60 #else
61 #  if !EXPECT_FINAL
62 #    error Expect no cxx_final support
63 #  endif
64 #endif
65
66 #if !HAVE_INHERITING_CONSTRUCTORS_AND_FINAL
67 #  if EXPECT_INHERITING_CONSTRUCTORS_AND_FINAL
68 #    error Expect cxx_inheriting_constructors and cxx_final support
69 #  endif
70 #else
71 #  if !EXPECT_INHERITING_CONSTRUCTORS_AND_FINAL
72 #    error Expect no combined cxx_inheriting_constructors and cxx_final support
73 #  endif
74 #endif
75
76 int main()
77 {
78 }