aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/c-family/ChangeLog6
-rw-r--r--gcc/c-family/c.opt18
-rw-r--r--gcc/doc/invoke.texi6
-rw-r--r--gcc/testsuite/ChangeLog4
-rw-r--r--gcc/testsuite/gcc.dg/c18-version-1.c9
-rw-r--r--gcc/testsuite/gcc.dg/c18-version-2.c9
7 files changed, 55 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 00b4172..4e7f0af 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2017-11-16 Joseph Myers <joseph@codesourcery.com>
+
+ * doc/invoke.texi (-std=c17): Refer to 2018 expected publication
+ date of C17.
+ (-std=c18, -std=iso9899:2018, -std=gnu18): Document option
+ aliases.
+
2017-11-16 Thomas Koenig <tkoenig@gcc.gnu.org>
PR bootstrap/82856
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index 3127635..990cd61 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,9 @@
+2017-11-16 Joseph Myers <joseph@codesourcery.com>
+
+ * c.opt (-std=c17, std=gnu17, -std=iso9899:2017): Refer to 2018
+ expected publication date of C17.
+ (-std=c18, -std=gnu18, -std=iso9899:2018): New option aliases.
+
2017-11-15 Joseph Myers <joseph@codesourcery.com>
PR c/81156
diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt
index 479ae63..d857dfc 100644
--- a/gcc/c-family/c.opt
+++ b/gcc/c-family/c.opt
@@ -1950,7 +1950,11 @@ Deprecated in favor of -std=c11.
std=c17
C ObjC
-Conform to the ISO 2017 C standard.
+Conform to the ISO 2017 C standard (expected to be published in 2018).
+
+std=c18
+C ObjC Alias(std=c17)
+Conform to the ISO 2017 C standard (expected to be published in 2018).
std=c89
C ObjC Alias(std=c90)
@@ -2016,7 +2020,11 @@ Deprecated in favor of -std=gnu11.
std=gnu17
C ObjC
-Conform to the ISO 2017 C standard with GNU extensions.
+Conform to the ISO 2017 C standard (expected to be published in 2018) with GNU extensions.
+
+std=gnu18
+C ObjC Alias(std=gnu17)
+Conform to the ISO 2017 C standard (expected to be published in 2018) with GNU extensions.
std=gnu89
C ObjC Alias(std=gnu90)
@@ -2056,7 +2064,11 @@ Conform to the ISO 2011 C standard.
std=iso9899:2017
C ObjC Alias(std=c17)
-Conform to the ISO 2017 C standard.
+Conform to the ISO 2017 C standard (expected to be published in 2018).
+
+std=iso9899:2018
+C ObjC Alias(std=c17)
+Conform to the ISO 2017 C standard (expected to be published in 2018).
traditional
Driver
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 6384bc6..1e2b869 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -1832,8 +1832,11 @@ Annexes F and G) and the optional Annexes K (Bounds-checking
interfaces) and L (Analyzability). The name @samp{c1x} is deprecated.
@item c17
+@itemx c18
@itemx iso9899:2017
-ISO C17, the 2017 revision of the ISO C standard. This standard is
+@itemx iso9899:2018
+ISO C17, the 2017 revision of the ISO C standard (expected to be
+published in 2018). This standard is
same as C11 except for corrections of defects (all of which are also
applied with @option{-std=c11}) and a new value of
@code{__STDC_VERSION__}, and so is supported to the same extent as C11.
@@ -1852,6 +1855,7 @@ GNU dialect of ISO C11.
The name @samp{gnu1x} is deprecated.
@item gnu17
+@itemx gnu18
GNU dialect of ISO C17. This is the default for C code.
@item c++98
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 180f4db..f922189 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2017-11-16 Joseph Myers <joseph@codesourcery.com>
+
+ * gcc.dg/c18-version-1.c, gcc.dg/c18-version-2.c: New tests.
+
2017-11-15 Michael Meissner <meissner@linux.vnet.ibm.com>
* gcc.target/powerpc/bfp/bfp.exp: Look for *.c files, not *.c*
diff --git a/gcc/testsuite/gcc.dg/c18-version-1.c b/gcc/testsuite/gcc.dg/c18-version-1.c
new file mode 100644
index 0000000..9acd024
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/c18-version-1.c
@@ -0,0 +1,9 @@
+/* Test __STDC_VERSION__ for C17. Test -std=c18. */
+/* { dg-do compile } */
+/* { dg-options "-std=c18 -pedantic-errors" } */
+
+#if __STDC_VERSION__ == 201710L
+int i;
+#else
+#error "Bad __STDC_VERSION__."
+#endif
diff --git a/gcc/testsuite/gcc.dg/c18-version-2.c b/gcc/testsuite/gcc.dg/c18-version-2.c
new file mode 100644
index 0000000..8786402
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/c18-version-2.c
@@ -0,0 +1,9 @@
+/* Test __STDC_VERSION__ for C17. Test -std=iso9899:2018. */
+/* { dg-do compile } */
+/* { dg-options "-std=iso9899:2018 -pedantic-errors" } */
+
+#if __STDC_VERSION__ == 201710L
+int i;
+#else
+#error "Bad __STDC_VERSION__."
+#endif