aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/dump-parse-tree.cc
diff options
context:
space:
mode:
authorHarald Anlauf <anlauf@gmx.de>2022-02-23 23:08:29 +0100
committerHarald Anlauf <anlauf@gmx.de>2022-02-24 20:38:13 +0100
commit916b809fbfdd2740006270baf549bf22fe9ec3c4 (patch)
tree9d2d6e000b37e084950454f1b0f108a9a9b21625 /gcc/fortran/dump-parse-tree.cc
parent8645370af18979123d9e94e3ed215d23dd740721 (diff)
downloadgcc-916b809fbfdd2740006270baf549bf22fe9ec3c4.zip
gcc-916b809fbfdd2740006270baf549bf22fe9ec3c4.tar.gz
gcc-916b809fbfdd2740006270baf549bf22fe9ec3c4.tar.bz2
Fortran: frontend code for F2018 QUIET specifier to STOP and ERROR STOP
Fortran 2018 allows for a QUIET specifier to the STOP and ERROR STOP statements. Whilst the gfortran library code provides support for this specifier for quite some time, the frontend implementation was missing. gcc/fortran/ChangeLog: PR fortran/84519 * dump-parse-tree.cc (show_code_node): Dump QUIET specifier when present. * match.cc (gfc_match_stopcode): Implement parsing of F2018 QUIET specifier. F2018 stopcodes may have non-default integer kind. * resolve.cc (gfc_resolve_code): Add checks for QUIET argument. * trans-stmt.cc (gfc_trans_stop): Pass QUIET specifier to call of library function. gcc/testsuite/ChangeLog: PR fortran/84519 * gfortran.dg/stop_1.f90: New test. * gfortran.dg/stop_2.f: New test. * gfortran.dg/stop_3.f90: New test. * gfortran.dg/stop_4.f90: New test.
Diffstat (limited to 'gcc/fortran/dump-parse-tree.cc')
-rw-r--r--gcc/fortran/dump-parse-tree.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/fortran/dump-parse-tree.cc b/gcc/fortran/dump-parse-tree.cc
index 2a2f990..322416e 100644
--- a/gcc/fortran/dump-parse-tree.cc
+++ b/gcc/fortran/dump-parse-tree.cc
@@ -2370,6 +2370,11 @@ show_code_node (int level, gfc_code *c)
show_expr (c->expr1);
else
fprintf (dumpfile, "%d", c->ext.stop_code);
+ if (c->expr2 != NULL)
+ {
+ fputs (" QUIET=", dumpfile);
+ show_expr (c->expr2);
+ }
break;