re PR libfortran/49791 (Formatted namelist reads fails with: Cannot match namelist object)

2011-07-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/49791
        * io/list_read.c (nml_parse_qualifier): Remove check to
        enabled extended read for another case.

2011-07-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/49791
        * gfortran.dg/namelist_72.f: New.

From-SVN: r176661
This commit is contained in:
Tobias Burnus 2011-07-23 00:44:20 +02:00 committed by Tobias Burnus
parent efc694a70a
commit f5e62ce922
4 changed files with 44 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2011-07-23 Tobias Burnus <burnus@net-b.de>
PR fortran/49791
* gfortran.dg/namelist_72.f: New.
2011-07-23 Tobias Burnus <burnus@net-b.de> 2011-07-23 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/coarray_25.f90: New. * gfortran.dg/coarray_25.f90: New.

View File

@ -0,0 +1,33 @@
! { dg-do run }
!
! PR fortran/49791
!
! Contributed by Elliott Sales de Andrade
!
program namelist_test
dimension xpos(5000), ypos(5000)
namelist /geometry/ xpos, ypos
xpos = -huge(xpos)
ypos = -huge(ypos)
open(unit=4,file='geometry.in')
write(4,'(a)') '$geometry'
write(4,'(a)') ' xpos(1)= 0.00, 0.10, 0.20, 0.30, 0.40,'
write(4,'(a)') ' ypos(1)= 0.50, 0.60, 0.70, 0.80, 0.90,'
write(4,'(a)') '$end'
close(4)
open (unit=4,file='geometry.in',status='old',form='formatted')
read (4,geometry)
close(4, status='delete')
!print *, 'xpos', xpos(1:10), 'ypos', ypos(1:10)
if (any (xpos(1:5) /= [0.00, 0.10, 0.20, 0.30, 0.40]))call abort()
if (any (ypos(1:5) /= [0.50, 0.60, 0.70, 0.80, 0.90]))call abort()
if (any (xpos(6:) /= -huge(xpos))) call abort ()
if (any (ypos(6:) /= -huge(ypos))) call abort ()
end

View File

@ -1,3 +1,9 @@
2011-07-23 Tobias Burnus <burnus@net-b.de>
PR fortran/49791
* io/list_read.c (nml_parse_qualifier): Remove check to
enabled extended read for another case.
2011-07-15 Daniel Carrera <dcarrera@gmail.com> 2011-07-15 Daniel Carrera <dcarrera@gmail.com>
* caf/mpi.c (caf_runtime_error): Change fprintf to vfprintf. * caf/mpi.c (caf_runtime_error): Change fprintf to vfprintf.

View File

@ -2213,7 +2213,6 @@ nml_parse_qualifier (st_parameter_dt *dtp, descriptor_dimension *ad,
do not allow excess data to be processed. */ do not allow excess data to be processed. */
if (is_array_section == 1 if (is_array_section == 1
|| !(compile_options.allow_std & GFC_STD_GNU) || !(compile_options.allow_std & GFC_STD_GNU)
|| !dtp->u.p.ionml->touched
|| dtp->u.p.ionml->type == BT_DERIVED) || dtp->u.p.ionml->type == BT_DERIVED)
ls[dim].end = ls[dim].start; ls[dim].end = ls[dim].start;
else else