diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/namelist_56.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/namelist_56.f90 | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/namelist_56.f90 b/gcc/testsuite/gfortran.dg/namelist_56.f90 new file mode 100644 index 000000000..658d12f6f --- /dev/null +++ b/gcc/testsuite/gfortran.dg/namelist_56.f90 @@ -0,0 +1,22 @@ +! { dg-do run } +! PR37707 Namelist read of array of derived type incorrect +! Test case from Tobias Burnus + IMPLICIT NONE + integer :: j + character(len=5) :: str(4) + character(len=900) :: nlstr + namelist /nml/ str, j + str = '' + j = -42 + nlstr = '&nml str = "a", "b", "cde", j = 5 /' + read(nlstr,nml) + open(99, status="scratch") + write(99,nml) + rewind(99) + j = -54 + str = 'XXXX' + read(99,nml) + if (j.ne.5) call abort + if (any(str.ne.["a ","b ","cde "," "])) call abort + close(99) +end |