re PR fortran/65596 (NAMELIST bug with f2003: reads too far)
2015-03-28 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libgfortran/65596 * gfortran.dg/namelist_86.f90: New test. From-SVN: r221756
This commit is contained in:
parent
d520fea881
commit
9ddb384381
|
@ -1,3 +1,8 @@
|
|||
2015-03-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||||
|
||||
PR libgfortran/65596
|
||||
* gfortran.dg/namelist_86.f90: New test.
|
||||
|
||||
2015-03-28 Andre Vehreschild <vehre@gmx.de>
|
||||
|
||||
* gfortran.dg/unlimited_polymorphic_24.f03: Fixing copyright
|
||||
|
|
|
@ -0,0 +1,49 @@
|
|||
! { dg-do run }
|
||||
! { dg-options "-std=f2003 -fall-intrinsics" }
|
||||
! PR65596 Namelist reads too far.
|
||||
integer ,parameter :: CL=80
|
||||
integer ,parameter :: AL=4
|
||||
|
||||
character(CL) :: mode
|
||||
character(CL) :: cats(AL)
|
||||
character(CL) :: dogs(AL)
|
||||
character(CL) :: rslt(AL)
|
||||
integer :: ierr, k
|
||||
|
||||
namelist / theList / cats, dogs, mode
|
||||
|
||||
open(27,status="scratch")
|
||||
|
||||
write(27,'(A)') "&theList"
|
||||
write(27,'(A)') " mode = 'on'"
|
||||
write(27,'(A)') " dogs = 'Rover',"
|
||||
write(27,'(A)') " 'Spot'"
|
||||
write(27,'(A)') " cats = 'Fluffy',"
|
||||
write(27,'(A)') " 'Hairball'"
|
||||
write(27,'(A)') "/"
|
||||
rewind(27)
|
||||
|
||||
mode = 'off'
|
||||
cats(:) = '________'
|
||||
dogs(:) = '________'
|
||||
|
||||
read (27, nml=theList, iostat=ierr)
|
||||
|
||||
if (ierr .ne. 0) call abort
|
||||
|
||||
rslt = ['Rover ','Spot ','________','________']
|
||||
if (any(dogs.ne.rslt)) call abort
|
||||
|
||||
rslt = ['Fluffy ','Hairball','________','________']
|
||||
if (any(cats.ne.rslt)) call abort
|
||||
|
||||
close(27)
|
||||
|
||||
contains
|
||||
|
||||
subroutine abort()
|
||||
close(27)
|
||||
stop 500
|
||||
end subroutine abort
|
||||
|
||||
end
|
Loading…
Reference in New Issue