summaryrefslogtreecommitdiffstats
path: root/Tests/CompileFeatures/default_dialect.c
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2014-11-17 22:24:31 (GMT)
committerStephen Kelly <steveire@gmail.com>2014-11-20 17:24:59 (GMT)
commita3d0ae17581dd11f969eac3a1c43f9f009b23163 (patch)
tree34cbfc3fd2e0dc0d35d5fd15b85b083cab65eb7e /Tests/CompileFeatures/default_dialect.c
parent49e2b689a8d5330cb58a09af7506bf58e17d4ab5 (diff)
downloadCMake-a3d0ae17581dd11f969eac3a1c43f9f009b23163.zip
CMake-a3d0ae17581dd11f969eac3a1c43f9f009b23163.tar.gz
CMake-a3d0ae17581dd11f969eac3a1c43f9f009b23163.tar.bz2
Features: Fix the default C dialect for Clang and GNU.
Clang 3.4 uses C99 by default, and Clang 3.6 uses C11 by default: http://thread.gmane.org/gmane.comp.compilers.clang.devel/39379 GNU 4.9 uses C90 by default, and GNU 5.0 uses C11 by default: https://gcc.gnu.org/gcc-5/changes.html Test that the default compiler settings result in the expected dialect macros being defined for both C and CXX. Remove the unused main.c file from the CompileFeatures unit test.
Diffstat (limited to 'Tests/CompileFeatures/default_dialect.c')
-rw-r--r--Tests/CompileFeatures/default_dialect.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/Tests/CompileFeatures/default_dialect.c b/Tests/CompileFeatures/default_dialect.c
new file mode 100644
index 0000000..1b39dec
--- /dev/null
+++ b/Tests/CompileFeatures/default_dialect.c
@@ -0,0 +1,22 @@
+
+#if DEFAULT_C11
+# if __STDC_VERSION__ != 201112L
+# error Unexpected value for __STDC_VERSION__.
+# endif
+#elif DEFAULT_C99
+# if __STDC_VERSION__ != 199901L
+# error Unexpected value for __STDC_VERSION__.
+# endif
+#else
+# if !DEFAULT_C90
+# error Buildsystem error
+# endif
+# if defined(__STDC_VERSION__)
+# error Unexpected __STDC_VERSION__ definition
+# endif
+#endif
+
+int main()
+{
+ return 0;
+}