PR fortran/95195 - Fortran testcase should clean up afterwards

Change testcase to check error message (iomsg) at runtime, rather than to crash.

libgfortran/
	PR fortran/95091
	* io/transfer.c (finalize_transfer): Fix type in error message.

gcc/testsuite/
	PR fortran/95195
	* gfortran.dg/namelist_97.f90: Adjust testcase.
This commit is contained in:
Harald Anlauf 2020-06-08 21:00:11 +02:00
parent c1057cc0a8
commit 8cd239614e
2 changed files with 7 additions and 5 deletions

View file

@ -1,14 +1,16 @@
! { dg-do run }
! { dg-output "At line 12 .*" }
! { dg-shouldfail "Fortran runtime error: Namelist formatting .* FORM='UNFORMATTED'" }
!
! PR95195 - improve runtime error when writing a namelist to an unformatted file
program test
character(len=11) :: my_form = 'unformatted'
integer :: i = 1, j = 2, k = 3
character(80) :: iomsg
namelist /nml1/ i, j, k
open (unit=10, file='test.dat', form=my_form)
write (unit=10, nml=nml1)
open (unit=10, file='namelist_97.dat', form=my_form)
write (unit=10, nml=nml1, iostat=iostat, iomsg=iomsg)
close (unit=10, status='delete')
if (iostat == 0) stop 1
if (iomsg /= "Namelist formatting for unit connected with FORM='UNFORMATTED'") &
stop 2
end program test

View file

@ -4127,7 +4127,7 @@ finalize_transfer (st_parameter_dt *dtp)
{
generate_error (&dtp->common, LIBERROR_OPTION_CONFLICT,
"Namelist formatting for unit connected "
"with FORM='UNFORMATTED");
"with FORM='UNFORMATTED'");
return;
}