Apologies for lobbing this request to all you wonderful folk who maintain and develop GFORTRAN.
Given that you are making noises about Fortran 2018 - and the language is still alive, kicking and thriving - can you recommend and/or point me at a public domain GUI that works well with GFORTRAN? As a Fortran end User I marvel at your ongoing efforts !! Regards / thanks. Happy Christmas and Best Wishes for (Fortran) 2018. Robin Curtis > On 17 Dec 2017, at 10:02, Janne Blomqvist <blomqvist.ja...@gmail.com> wrote: > > The Fortran committee has decided to rename the upcoming Fortran 2015 > standard to Fortran 2018. This is not a reflection of a three year > delay in the process, but rather they are following other standards in > adopting the year of publication for the name. For more details see > N2144. > > This patch renames GFC_STD_F2015 to GFC_STD_F2018, and makes it a > separate flag rather than an alias for GFC_STD_GNU. Also, it adds a > -std=f2018 argument, and documents it. > > Regtested on x86_64-pc-linux-gnu, Ok for trunk? > > gcc/fortran/ChangeLog: > > 2017-12-17 Janne Blomqvist <j...@gcc.gnu.org> > > * decl.c (gfc_match_implicit_none): Use GFC_STD_F2018 instead of > GFC_STD_F2015. > * error.c (gfc_notify_std): Add GFC_STD_F2018{_DEL,_OBS} to > switch. > * gfortran.texi: Document -std=f2018. > * interface.c (compare_parameter): Fix comment. > * invoke.texi: Document -std=f2018. > * lang.opt: Add -std=f2018 argumnet. > * libgfortran.h (GFC_STD_F2015): Rename to GFC_STD_F0218, use > separate flag bit. > (GFC_STD_F2018_DEL): New macro. > (GFC_STD_F2018_OBS): Likewise. > * match.c (gfc_match_stopcode): Use GFC_STD_F2018. > * options.c (set_default_std_flags): Add F2018 flags to defaults. > (gfc_handle_option): Set options for -std=f2018. > > gcc/testsuite/ChangeLog: > > 2017-12-17 Janne Blomqvist <j...@gcc.gnu.org> > > * gfortran.dg/error_stop_3.f90: Update -std= option, fix comments. > * gfortran.dg/error_stop_4.f90: Update error message. > * gfortran.dg/implicit_14.f90: Likewise. > * gfortran.dg/spellcheck-procedure_2.f90: Don't warn for F2018 > features. > --- > gcc/fortran/decl.c | 2 +- > gcc/fortran/error.c | 9 ++ > gcc/fortran/gfortran.texi | 108 +++++++++++++-------- > gcc/fortran/interface.c | 2 +- > gcc/fortran/invoke.texi | 62 ++++++------ > gcc/fortran/lang.opt | 6 +- > gcc/fortran/libgfortran.h | 5 +- > gcc/fortran/match.c | 2 +- > gcc/fortran/options.c | 14 ++- > gcc/testsuite/gfortran.dg/error_stop_3.f90 | 5 +- > gcc/testsuite/gfortran.dg/error_stop_4.f90 | 5 +- > gcc/testsuite/gfortran.dg/implicit_14.f90 | 4 +- > .../gfortran.dg/spellcheck-procedure_2.f90 | 2 +- > 13 files changed, 140 insertions(+), 86 deletions(-) > > diff --git a/gcc/fortran/decl.c b/gcc/fortran/decl.c > index d46083c..53a87b6 100644 > --- a/gcc/fortran/decl.c > +++ b/gcc/fortran/decl.c > @@ -4114,7 +4114,7 @@ gfc_match_implicit_none (void) > if (c == '(') > { > (void) gfc_next_ascii_char (); > - if (!gfc_notify_std (GFC_STD_F2015, "IMPORT NONE with spec list at > %C")) > + if (!gfc_notify_std (GFC_STD_F2018, "IMPORT NONE with spec list at > %C")) > return MATCH_ERROR; > > gfc_gobble_whitespace (); > diff --git a/gcc/fortran/error.c b/gcc/fortran/error.c > index 2cece49..f11dadc 100644 > --- a/gcc/fortran/error.c > +++ b/gcc/fortran/error.c > @@ -864,6 +864,15 @@ gfc_notify_std (int std, const char *gmsgid, ...) > > switch (std) > { > + case GFC_STD_F2018_DEL: > + msg = _("Fortran 2018 deleted feature:"); > + break; > + case GFC_STD_F2018_OBS: > + msg = _("Fortran 2018 obsolescent feature:"); > + break; > + case GFC_STD_F2018: > + msg = _("Fortran 2018:"); > + break; > case GFC_STD_F2008_TS: > msg = "TS 29113/TS 18508:"; > break; > diff --git a/gcc/fortran/gfortran.texi b/gcc/fortran/gfortran.texi > index 36c7b94..aabf268 100644 > --- a/gcc/fortran/gfortran.texi > +++ b/gcc/fortran/gfortran.texi > @@ -180,7 +180,7 @@ Part I: Invoking GNU Fortran > * Runtime:: Influencing runtime behavior with environment > variables. > > Part II: Language Reference > -* Fortran 2003 and 2008 status:: Fortran 2003 and 2008 features supported > by GNU Fortran. > +* Fortran standards status:: Fortran 2003, 2008 and 2018 features > supported by GNU Fortran. > * Compiler Characteristics:: User-visible implementation details. > * Extensions:: Language extensions implemented by GNU > Fortran. > * Mixed-Language Programming:: Interoperability with C > @@ -243,16 +243,15 @@ or alternative to, the Unix @command{f95} command; > @section About GNU Fortran > > The GNU Fortran compiler supports the Fortran 77, 90 and 95 standards > -completely, parts of the Fortran 2003 and Fortran 2008 standards, and > +completely, parts of the Fortran 2003, 2008 and 2018 standards, and > several vendor extensions. The development goal is to provide the > following features: > > @itemize @bullet > @item > -Read a user's program, > -stored in a file and containing instructions written > -in Fortran 77, Fortran 90, Fortran 95, Fortran 2003 or Fortran 2008. > -This file contains @dfn{source code}. > +Read a user's program, stored in a file and containing instructions > +written in Fortran 77, Fortran 90, Fortran 95, Fortran 2003, Fortran > +2008 or Fortran 2018. This file contains @dfn{source code}. > > @item > Translate the user's program into instructions a computer > @@ -504,10 +503,11 @@ G77 can be compiled with GNU Fortran, although there > are a few minor known > regressions. > > The primary work remaining to be done on GNU Fortran falls into three > -categories: bug fixing (primarily regarding the treatment of invalid code > -and providing useful error messages), improving the compiler optimizations > -and the performance of compiled code, and extending the compiler to support > -future standards---in particular, Fortran 2003 and Fortran 2008. > +categories: bug fixing (primarily regarding the treatment of invalid > +code and providing useful error messages), improving the compiler > +optimizations and the performance of compiled code, and extending the > +compiler to support future standards---in particular, Fortran 2003, > +Fortran 2008 and Fortran 2018. > > > @c --------------------------------------------------------------------- > @@ -527,13 +527,14 @@ ISO/IEC 1539:1997 (Fortran 95). As such, it can also > compile essentially all > standard-compliant Fortran 90 and Fortran 77 programs. It also supports > the ISO/IEC TR-15581 enhancements to allocatable arrays. > > -GNU Fortran also have a partial support for ISO/IEC 1539-1:2004 (Fortran > -2003), ISO/IEC 1539-1:2010 (Fortran 2008), the Technical Specification > -@code{Further Interoperability of Fortran with C} (ISO/IEC TS 29113:2012). > -Full support of those standards and future Fortran standards is planned. > -The current status of the support is can be found in the > -@ref{Fortran 2003 status}, @ref{Fortran 2008 status}, @ref{TS 29113 status} > -and @ref{TS 18508 status} sections of the documentation. > +GNU Fortran also have a partial support for ISO/IEC 1539-1:2004 > +(Fortran 2003), ISO/IEC 1539-1:2010 (Fortran 2008), the Technical > +Specification @code{Further Interoperability of Fortran with C} > +(ISO/IEC TS 29113:2012). Full support of those standards and future > +Fortran standards is planned. The current status of the support is > +can be found in the @ref{Fortran 2003 status}, @ref{Fortran 2008 > +status}, @ref{TS 29113 status}, @ref{TS 18508 status} and @ref{Fortran > +2018 status} sections of the documentation. > > Additionally, the GNU Fortran compilers supports the OpenMP specification > (version 4.0 and most of the features of the 4.5 version, > @@ -783,17 +784,18 @@ compile option was used. > @end tex > > @c --------------------------------------------------------------------- > -@c Fortran 2003 and 2008 Status > +@c Fortran standards status > @c --------------------------------------------------------------------- > > -@node Fortran 2003 and 2008 status > -@chapter Fortran 2003 and 2008 Status > +@node Fortran standards status > +@chapter Fortran standards status > > @menu > * Fortran 2003 status:: > * Fortran 2008 status:: > * TS 29113 status:: > * TS 18508 status:: > +* Fortran 2018 status:: > @end menu > > @node Fortran 2003 status > @@ -1145,6 +1147,27 @@ polymorphic components. > @end itemize > > > +@node Fortran 2018 status > +@section Status of Fortran 2018 support > + > +So far very little work has been done to support Fortran 2018. > + > +@itemize > +@item ERROR STOP in a PURE procedure > +An @code{ERROR STOP} statement is permitted in a @code{PURE} > +procedure. > + > +@item IMPLICIT NONE with a spec-list > +Support the @code{IMPLICIT NONE} statement with an > +@code{implicit-none-spec-list}. > + > +@item Behavior of INQUIRE with the RECL= specifier > + > +The behavior of the @code{INQUIRE} statement with the @code{RECL=} > +specifier now conforms to Fortran 2018. > + > +@end itemize > + > @c --------------------------------------------------------------------- > @c Compiler Characteristics > @c --------------------------------------------------------------------- > @@ -1482,18 +1505,19 @@ extensions. > @section Extensions implemented in GNU Fortran > @cindex extensions, implemented > > -GNU Fortran implements a number of extensions over standard > -Fortran. This chapter contains information on their syntax and > -meaning. There are currently two categories of GNU Fortran > -extensions, those that provide functionality beyond that provided > -by any standard, and those that are supported by GNU Fortran > -purely for backward compatibility with legacy compilers. By default, > -@option{-std=gnu} allows the compiler to accept both types of > -extensions, but to warn about the use of the latter. Specifying > -either @option{-std=f95}, @option{-std=f2003} or @option{-std=f2008} > -disables both types of extensions, and @option{-std=legacy} allows both > -without warning. The special compile flag @option{-fdec} enables additional > -compatibility extensions along with those enabled by @option{-std=legacy}. > +GNU Fortran implements a number of extensions over standard Fortran. > +This chapter contains information on their syntax and meaning. There > +are currently two categories of GNU Fortran extensions, those that > +provide functionality beyond that provided by any standard, and those > +that are supported by GNU Fortran purely for backward compatibility > +with legacy compilers. By default, @option{-std=gnu} allows the > +compiler to accept both types of extensions, but to warn about the use > +of the latter. Specifying either @option{-std=f95}, > +@option{-std=f2003}, @option{-std=f2008}, or @option{-std=f2018} > +disables both types of extensions, and @option{-std=legacy} allows > +both without warning. The special compile flag @option{-fdec} enables > +additional compatibility extensions along with those enabled by > +@option{-std=legacy}. > > @menu > * Old-style kind specifications:: > @@ -3602,15 +3626,17 @@ used. > @item @emph{option flag list}: > @multitable @columnfractions .15 .70 > @item @var{option}[0] @tab Allowed standard; can give run-time errors > -if e.g. an input-output edit descriptor is invalid in a given standard. > -Possible values are (bitwise or-ed) @code{GFC_STD_F77} (1), > -@code{GFC_STD_F95_OBS} (2), @code{GFC_STD_F95_DEL} (4), @code{GFC_STD_F95} > -(8), @code{GFC_STD_F2003} (16), @code{GFC_STD_GNU} (32), > -@code{GFC_STD_LEGACY} (64), @code{GFC_STD_F2008} (128), > -@code{GFC_STD_F2008_OBS} (256) and GFC_STD_F2008_TS (512). Default: > -@code{GFC_STD_F95_OBS | GFC_STD_F95_DEL | GFC_STD_F95 | GFC_STD_F2003 > -| GFC_STD_F2008 | GFC_STD_F2008_TS | GFC_STD_F2008_OBS | GFC_STD_F77 > -| GFC_STD_GNU | GFC_STD_LEGACY}. > +if e.g. an input-output edit descriptor is invalid in a given > +standard. Possible values are (bitwise or-ed) @code{GFC_STD_F77} (1), > +@code{GFC_STD_F95_OBS} (2), @code{GFC_STD_F95_DEL} (4), > +@code{GFC_STD_F95} (8), @code{GFC_STD_F2003} (16), @code{GFC_STD_GNU} > +(32), @code{GFC_STD_LEGACY} (64), @code{GFC_STD_F2008} (128), > +@code{GFC_STD_F2008_OBS} (256), @code{GFC_STD_F2008_TS} (512), > +@code{GFC_STD_F2018} (1024), @code{GFC_STD_F2018_OBS} (2048), and > +@code{GFC_STD=F2018_DEL} (4096). Default: @code{GFC_STD_F95_OBS | > +GFC_STD_F95_DEL | GFC_STD_F95 | GFC_STD_F2003 | GFC_STD_F2008 | > +GFC_STD_F2008_TS | GFC_STD_F2008_OBS | GFC_STD_F77 | GFC_STD_F2018 | > +GFC_STD_F2018_OBS | GFC_STD_F2018_DEL | GFC_STD_GNU | GFC_STD_LEGACY}. > @item @var{option}[1] @tab Standard-warning flag; prints a warning to > standard error. Default: @code{GFC_STD_F95_DEL | GFC_STD_LEGACY}. > @item @var{option}[2] @tab If non zero, enable pedantic checking. > diff --git a/gcc/fortran/interface.c b/gcc/fortran/interface.c > index 1b7ebf5..cd02214 100644 > --- a/gcc/fortran/interface.c > +++ b/gcc/fortran/interface.c > @@ -2355,7 +2355,7 @@ compare_parameter (gfc_symbol *formal, gfc_expr *actual, > if (formal->attr.codimension) > { > /* F2008, 12.5.2.8 + Corrig 2 (IR F08/0048). */ > - /* F2015, 12.5.2.8. */ > + /* F2018, 12.5.2.8. */ > if (formal->attr.dimension > && (formal->attr.contiguous || formal->as->type != AS_ASSUMED_SHAPE) > && actual_attr.dimension > diff --git a/gcc/fortran/invoke.texi b/gcc/fortran/invoke.texi > index f3a8b34..7b6f161 100644 > --- a/gcc/fortran/invoke.texi > +++ b/gcc/fortran/invoke.texi > @@ -467,22 +467,24 @@ representation of the translated Fortran code, produced > by > > @item -std=@var{std} > @opindex @code{std=}@var{std} option > -Specify the standard to which the program is expected to conform, which > -may be one of @samp{f95}, @samp{f2003}, @samp{f2008}, @samp{gnu}, or > -@samp{legacy}. The default value for @var{std} is @samp{gnu}, which > -specifies a superset of the Fortran 95 standard that includes all of the > -extensions supported by GNU Fortran, although warnings will be given for > -obsolete extensions not recommended for use in new code. The > -@samp{legacy} value is equivalent but without the warnings for obsolete > -extensions, and may be useful for old non-standard programs. The > -@samp{f95}, @samp{f2003} and @samp{f2008} values specify strict > -conformance to the Fortran 95, Fortran 2003 and Fortran 2008 standards, > -respectively; errors are given for all extensions beyond the relevant > -language standard, and warnings are given for the Fortran 77 features > -that are permitted but obsolescent in later standards. @samp{-std=f2008ts} > -allows the Fortran 2008 standard including the additions of the > -Technical Specification (TS) 29113 on Further Interoperability of Fortran > -with C and TS 18508 on Additional Parallel Features in Fortran. > +Specify the standard to which the program is expected to conform, > +which may be one of @samp{f95}, @samp{f2003}, @samp{f2008}, > +@samp{f2018}, @samp{gnu}, or @samp{legacy}. The default value for > +@var{std} is @samp{gnu}, which specifies a superset of the latest > +Fortran standard that includes all of the extensions supported by GNU > +Fortran, although warnings will be given for obsolete extensions not > +recommended for use in new code. The @samp{legacy} value is > +equivalent but without the warnings for obsolete extensions, and may > +be useful for old non-standard programs. The @samp{f95}, > +@samp{f2003}, @samp{f2008}, and @samp{f2018} values specify strict > +conformance to the Fortran 95, Fortran 2003, Fortran 2008 and Fortran > +2018 standards, respectively; errors are given for all extensions > +beyond the relevant language standard, and warnings are given for the > +Fortran 77 features that are permitted but obsolescent in later > +standards. @samp{-std=f2008ts} allows the Fortran 2008 standard > +including the additions of the Technical Specification (TS) 29113 on > +Further Interoperability of Fortran with C and TS 18508 on Additional > +Parallel Features in Fortran. > > @item -ftest-forall-temp > @opindex @code{ftest-forall-temp} > @@ -782,12 +784,12 @@ other output file. > @itemx -pedantic > @opindex @code{pedantic} > @opindex @code{Wpedantic} > -Issue warnings for uses of extensions to Fortran 95. > +Issue warnings for uses of extensions to Fortran. > @option{-pedantic} also applies to C-language constructs where they > occur in GNU Fortran source files, such as use of @samp{\e} in a > character constant within a directive like @code{#include}. > > -Valid Fortran 95 programs should compile properly with or without > +Valid Fortran programs should compile properly with or without > this option. > However, without this option, certain GNU extensions and traditional > Fortran features are supported as well. > @@ -799,7 +801,7 @@ nonstandard practices, but not all. > However, improvements to GNU Fortran in this area are welcome. > > This should be used in conjunction with @option{-std=f95}, > -@option{-std=f2003} or @option{-std=f2008}. > +@option{-std=f2003}, @option{-std=f2008} or @option{-std=f2018}. > > @item -pedantic-errors > @opindex @code{pedantic-errors} > @@ -845,12 +847,13 @@ The following example will trigger the warning. > @opindex @code{Wampersand} > @cindex warnings, ampersand > @cindex @code{&} > -Warn about missing ampersand in continued character constants. The warning is > -given with @option{-Wampersand}, @option{-pedantic}, @option{-std=f95}, > -@option{-std=f2003} and @option{-std=f2008}. Note: With no ampersand > -given in a continued character constant, GNU Fortran assumes continuation > -at the first non-comment, non-whitespace character after the ampersand > -that initiated the continuation. > +Warn about missing ampersand in continued character constants. The > +warning is given with @option{-Wampersand}, @option{-pedantic}, > +@option{-std=f95}, @option{-std=f2003}, @option{-std=f2008} and > +@option{-std=f2018}. Note: With no ampersand given in a continued > +character constant, GNU Fortran assumes continuation at the first > +non-comment, non-whitespace character after the ampersand that > +initiated the continuation. > > @item -Wargument-mismatch > @opindex @code{Wargument-mismatch} > @@ -988,10 +991,11 @@ A @code{CHARACTER} variable is declared with negative > length. > @cindex tabulators > By default, tabs are accepted as whitespace, but tabs are not members > of the Fortran Character Set. For continuation lines, a tab followed > -by a digit between 1 and 9 is supported. @option{-Wtabs} will cause > -a warning to be issued if a tab is encountered. Note, @option{-Wtabs} > -is active for @option{-pedantic}, @option{-std=f95}, @option{-std=f2003}, > -@option{-std=f2008}, @option{-std=f2008ts} and @option{-Wall}. > +by a digit between 1 and 9 is supported. @option{-Wtabs} will cause a > +warning to be issued if a tab is encountered. Note, @option{-Wtabs} is > +active for @option{-pedantic}, @option{-std=f95}, @option{-std=f2003}, > +@option{-std=f2008}, @option{-std=f2008ts}, @option{-std=f2018} and > +@option{-Wall}. > > @item -Wundefined-do-loop > @opindex @code{Wundefined-do-loop} > diff --git a/gcc/fortran/lang.opt b/gcc/fortran/lang.opt > index 780335f..4421c0b 100644 > --- a/gcc/fortran/lang.opt > +++ b/gcc/fortran/lang.opt > @@ -1,4 +1,4 @@ > -; Options for the Fortran 95 front end. > +; Options for the Fortran front end. > ; Copyright (C) 2003-2017 Free Software Foundation, Inc. > ; > ; This file is part of GCC. > @@ -802,6 +802,10 @@ std=f2008ts > Fortran > Conform to the ISO Fortran 2008 standard including TS 29113. > > +std=f2018 > +Fortran > +Conform to the ISO Fortran 2018 standard. > + > std=f95 > Fortran > Conform to the ISO Fortran 95 standard. > diff --git a/gcc/fortran/libgfortran.h b/gcc/fortran/libgfortran.h > index c5ff992..0756c32 100644 > --- a/gcc/fortran/libgfortran.h > +++ b/gcc/fortran/libgfortran.h > @@ -22,8 +22,9 @@ along with GCC; see the file COPYING3. If not see > Note that no features were obsoleted nor deleted in F2003. > Please remember to keep those definitions in sync with > gfortran.texi. */ > -/* For now, use F2015 = GFC_STD_GNU. */ > -#define GFC_STD_F2015 (1<<5) /* PLACEHOLDER for Fortran > 2015. */ > +#define GFC_STD_F2018_DEL (1<<12) /* Deleted in F2018. */ > +#define GFC_STD_F2018_OBS (1<<11) /* Obsolescent in F2018. */ > +#define GFC_STD_F2018 (1<<10) /* New in F2018. */ > #define GFC_STD_F2008_TS (1<<9) /* POST-F2008 technical reports. */ > #define GFC_STD_F2008_OBS (1<<8) /* Obsolescent in F2008. */ > #define GFC_STD_F2008 (1<<7) /* New in F2008. */ > diff --git a/gcc/fortran/match.c b/gcc/fortran/match.c > index c5bdce2..d63b11c 100644 > --- a/gcc/fortran/match.c > +++ b/gcc/fortran/match.c > @@ -2985,7 +2985,7 @@ gfc_match_stopcode (gfc_statement st) > { > if (st == ST_ERROR_STOP) > { > - if (!gfc_notify_std (GFC_STD_F2015, "%s statement at %C in PURE " > + if (!gfc_notify_std (GFC_STD_F2018, "%s statement at %C in PURE " > "procedure", gfc_ascii_statement (st))) > goto cleanup; > } > diff --git a/gcc/fortran/options.c b/gcc/fortran/options.c > index 0ee6b78..57fc0f5 100644 > --- a/gcc/fortran/options.c > +++ b/gcc/fortran/options.c > @@ -42,7 +42,8 @@ set_default_std_flags (void) > { > gfc_option.allow_std = GFC_STD_F95_OBS | GFC_STD_F95_DEL > | GFC_STD_F2003 | GFC_STD_F2008 | GFC_STD_F95 | GFC_STD_F77 > - | GFC_STD_F2008_OBS | GFC_STD_F2008_TS | GFC_STD_GNU | GFC_STD_LEGACY; > + | GFC_STD_F2008_OBS | GFC_STD_F2008_TS | GFC_STD_GNU | GFC_STD_LEGACY > + | GFC_STD_F2018 | GFC_STD_F2018_DEL | GFC_STD_F2018_OBS; > gfc_option.warn_std = GFC_STD_F95_DEL | GFC_STD_LEGACY; > } > > @@ -741,6 +742,17 @@ gfc_handle_option (size_t scode, const char *arg, int > value, > warn_tabs = 1; > break; > > + case OPT_std_f2018: > + gfc_option.allow_std = GFC_STD_F95_OBS | GFC_STD_F77 > + | GFC_STD_F2003 | GFC_STD_F95 | GFC_STD_F2008 | GFC_STD_F2008_OBS > + | GFC_STD_F2008_TS | GFC_STD_F2018 | GFC_STD_F2018_OBS; > + gfc_option.warn_std = GFC_STD_F95_OBS | GFC_STD_F2008_OBS > + | GFC_STD_F2018_OBS; > + gfc_option.max_identifier_length = 63; > + warn_ampersand = 1; > + warn_tabs = 1; > + break; > + > case OPT_std_gnu: > set_default_std_flags (); > break; > diff --git a/gcc/testsuite/gfortran.dg/error_stop_3.f90 > b/gcc/testsuite/gfortran.dg/error_stop_3.f90 > index 4374739..1ff74d8 100644 > --- a/gcc/testsuite/gfortran.dg/error_stop_3.f90 > +++ b/gcc/testsuite/gfortran.dg/error_stop_3.f90 > @@ -1,8 +1,7 @@ > ! { dg-do compile } > -! { dg-options "-std=gnu" } > +! { dg-options "-std=f2018" } > ! > -! F2015 permits ERROR STOP in PURE procedures > -! FIXME: Change to -std=f2015, when available > +! F2018 permits ERROR STOP in PURE procedures > ! > pure subroutine foo() > error stop "failed" > diff --git a/gcc/testsuite/gfortran.dg/error_stop_4.f90 > b/gcc/testsuite/gfortran.dg/error_stop_4.f90 > index a28aa37..fbca599 100644 > --- a/gcc/testsuite/gfortran.dg/error_stop_4.f90 > +++ b/gcc/testsuite/gfortran.dg/error_stop_4.f90 > @@ -1,9 +1,8 @@ > ! { dg-do compile } > ! { dg-options "-std=f2008ts" } > ! > -! F2015 permits ERROR STOP in PURE procedures > -! FIXME: Change to error_stop_3.f90 to -std=f2015. > +! F2018 permits ERROR STOP in PURE procedures > ! > pure subroutine foo() > - error stop "failed" ! { dg-error "GNU Extension: ERROR STOP statement at > .1. in PURE procedure" } > + error stop "failed" ! { dg-error "Fortran 2018: ERROR STOP statement at > .1. in PURE procedure" } > end > diff --git a/gcc/testsuite/gfortran.dg/implicit_14.f90 > b/gcc/testsuite/gfortran.dg/implicit_14.f90 > index 5b1a3b6..b4c005b 100644 > --- a/gcc/testsuite/gfortran.dg/implicit_14.f90 > +++ b/gcc/testsuite/gfortran.dg/implicit_14.f90 > @@ -1,8 +1,8 @@ > ! { dg-do compile } > ! { dg-options "-std=f2008ts" } > ! > -! Support Fortran 2015's IMPLICIT NONE with spec list > +! Support Fortran 2018's IMPLICIT NONE with spec list > ! (currently implemented as vendor extension) > > -implicit none (type) ! { dg-error "GNU Extension: IMPORT NONE with spec list > at \\(1\\)" } > +implicit none (type) ! { dg-error "Fortran 2018: IMPORT NONE with spec list > at \\(1\\)" } > end > diff --git a/gcc/testsuite/gfortran.dg/spellcheck-procedure_2.f90 > b/gcc/testsuite/gfortran.dg/spellcheck-procedure_2.f90 > index a6ea5f9..fbd4dcd 100644 > --- a/gcc/testsuite/gfortran.dg/spellcheck-procedure_2.f90 > +++ b/gcc/testsuite/gfortran.dg/spellcheck-procedure_2.f90 > @@ -3,7 +3,7 @@ > > > program spellchekc > - implicit none (external) ! { dg-warning "GNU Extension: IMPORT NONE with > spec list" } > + implicit none (external) > > interface > subroutine bark_unless_zero(iarg) > -- > 2.7.4 > >