diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 658be507224..96e602b5ef2 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2008-07-22 Jerry DeLisle + + PR libfortran/36852 + * gfortran.dg/namelist_52.f90: New test. + 2008-07-22 Ulrich Weigand * lib/target-supports.exp (check_effective_target_spu_auto_overlay): diff --git a/gcc/testsuite/gfortran.dg/namelist_52.f90 b/gcc/testsuite/gfortran.dg/namelist_52.f90 new file mode 100644 index 00000000000..6e31382927f --- /dev/null +++ b/gcc/testsuite/gfortran.dg/namelist_52.f90 @@ -0,0 +1,32 @@ +! { dg-do run } +! PR36582 Namelist I/O error: Bogus "Cannot match namelist object" +! Test case derived from PR. +module mod1 + +type screen_io_type +integer :: begin +end type screen_io_type + +type adjoint_type +type(screen_io_type) :: screen_io_fs_ntime +character(12) :: solver_type +end type adjoint_type + +type(adjoint_type) :: adjoint +namelist/info_adjoint/adjoint + +end module mod1 + +program gfortran_error_2 +use mod1 +adjoint%solver_type = "abcdefghijkl" +open(31,status='scratch') +write(31, '(a)') "&info_adjoint" +write(31, '(a)') "adjoint%solver_type = 'direct'" +write(31, '(a)') "adjoint%screen_io_fs_ntime%begin = 42" +write(31, '(a)') "/" +rewind(31) +read(31,nml=info_adjoint) +if (adjoint%solver_type /= 'direct') call abort +if (adjoint%screen_io_fs_ntime%begin /= 42) call abort +end program gfortran_error_2