From e51e2058f0ef614f0fd4e9c6be82dba240157dbd Mon Sep 17 00:00:00 2001
From: Jerry DeLisle <jvdelisle@gcc.gnu.org>
Date: Sun, 1 Dec 2019 22:29:43 +0000
Subject: [PATCH] re PR libfortran/90374 (Fortran 2018: Support d0.d, e0.d,
 es0.d, en0.d, g0.d and ew.d e0 edit descriptors for output)

2019-12-01  Jerry DeLisle  <jvdelisle@gcc.ngu.org>

	PR fortran/90374
	* io/format.c (parse_format_list): Add braces to disambiguate
	conditional.

From-SVN: r278886
---
 libgfortran/ChangeLog   |  6 ++++++
 libgfortran/io/format.c | 24 +++++++++++++-----------
 2 files changed, 19 insertions(+), 11 deletions(-)

diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index 74e36acd1d9b..ac925cc8dc41 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,9 @@
+2019-12-01  Jerry DeLisle  <jvdelisle@gcc.ngu.org>
+
+	PR fortran/90374
+	* io/format.c (parse_format_list): Add braces to disambiguate
+	conditional.
+
 2019-11-28  Jerry DeLisle  <jvdelisle@gcc.ngu.org>
 
 	PR fortran/90374
diff --git a/libgfortran/io/format.c b/libgfortran/io/format.c
index dd448c83e871..0b23721c0553 100644
--- a/libgfortran/io/format.c
+++ b/libgfortran/io/format.c
@@ -1027,17 +1027,19 @@ parse_format_list (st_parameter_dt *dtp, bool *seen_dd)
 	{
 	  t = format_lex (fmt);
 	  if (t != FMT_POSINT)
-	    if (t == FMT_ZERO)
-	      {
-		notify_std (&dtp->common, GFC_STD_F2018,
-			    "Positive exponent width required");
-	      }
-	    else
-	      {
-		fmt->error = "Positive exponent width required in "
-			     "format string at %L";
-		goto finished;
-	      }
+	    {
+	      if (t == FMT_ZERO)
+		{
+		  notify_std (&dtp->common, GFC_STD_F2018,
+			      "Positive exponent width required");
+		}
+	      else
+		{
+		  fmt->error = "Positive exponent width required in "
+			       "format string at %L";
+		  goto finished;
+		}
+	    }
 	  tail->u.real.e = fmt->value;
 	}
 
-- 
GitLab