Fortran : rejected f0.d edit descriptor PR96436
authorMark Eggleston <markeggleston@gcc.gnu.org>
Tue, 4 Aug 2020 13:10:08 +0000 (14:10 +0100)
committerMark Eggleston <markeggleston@gcc.gnu.org>
Thu, 20 Aug 2020 06:40:55 +0000 (07:40 +0100)
commitc2a0fd7c8ff426cc40ec678efef85e4a376ea4b5
treedf94cc464dbb4da304a5c733425324b1eb5e2b25
parent2f5951bd95e334d611f4be7bbe1a136c580f9c20
Fortran  : rejected f0.d edit descriptor PR96436

Zero length f format descriptors are valid for Fortran 95 and
later.  For g format descriptors from Fortran 2008 and later.
Finally for D, E, EN and ES for Fortran 2018 and later.

2020-08-20  Mark Eggleston  <markeggleston@gcc.gnu.org>

libgfortran/

PR fortran/96436
* io/format.c (parse_format_list):  Add new local variable
"standard" to hold the required standard to check. If the
format width is zero select standard depending on descriptor.
Call notification_std using the new standard variable.

2020-08-20  Mark Eggleston  <markeggleston@gcc.gnu.org>

gcc/testsuite/

PR fortran/96436
* gfortran.dg/pr96436_1.f90: New test.
* gfortran.dg/pr96436_2.f90: New test.
* gfortran.dg/pr96436_3.f90: New test.
* gfortran.dg/pr96436_4.f90: New test.
* gfortran.dg/pr96436_5.f90: New test.
* gfortran.dg/pr96436_6.f90: New test.
* gfortran.dg/pr96436_7.f90: New test.
* gfortran.dg/pr96436_8.f90: New test.
* gfortran.dg/pr96436_9.f90
* gfortran.dg/pr96436_10.f90
gcc/testsuite/gfortran.dg/pr96436_1.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/pr96436_10.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/pr96436_2.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/pr96436_3.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/pr96436_4.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/pr96436_5.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/pr96436_6.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/pr96436_7.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/pr96436_8.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/pr96436_9.f90 [new file with mode: 0644]
libgfortran/io/format.c