2007-08-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
authorjvdelisle <jvdelisle@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 10 Aug 2007 12:39:46 +0000 (12:39 +0000)
committerjvdelisle <jvdelisle@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 10 Aug 2007 12:39:46 +0000 (12:39 +0000)
PR libfortran/33039
* gfortran.dg/namelist_37.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127333 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/namelist_37.f90 [new file with mode: 0644]

index 8046b94..b56e0d5 100644 (file)
@@ -1,3 +1,8 @@
+2007-08-10  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR libfortran/33039
+       * gfortran.dg/namelist_37.f90: New test.
+
 2007-08-10  Paolo Carlini  <pcarlini@suse.de>
 
        PR c++/22256
diff --git a/gcc/testsuite/gfortran.dg/namelist_37.f90 b/gcc/testsuite/gfortran.dg/namelist_37.f90
new file mode 100644 (file)
index 0000000..9ff6297
--- /dev/null
@@ -0,0 +1,30 @@
+! { dg-do run }
+! PR33039 Read NAMELIST:  reads wrong namelist name
+! Test case from PR modified by Jerry DeLisle <jvdelisle@gcc.gnu.org>\r
+PROGRAM namelist\r
+CHARACTER*25 CHAR\r
+NAMELIST /CODE/ CHAR, X\r
+NAMELIST /CODEtwo/ X\r
+\r
+OPEN(10, status="scratch")
+write(10,'(a)') "File with test NAMELIST inputs"
+write(10,'(a)') " &CODVJS  char='VJS-Not a proper nml name', X=-0.5/"
+write(10,'(a)') " &CODEone char='CODEone input', X=-1.0 /"
+write(10,'(a)') " &CODEtwo char='CODEtwo inputs', X=-2.0/"
+write(10,'(a)') " &code    char='Lower case name',X=-3.0/"
+write(10,'(a)') " &CODE    char='Desired namelist sel', X=44./"
+write(10,'(a)') " &CODEx   char='Should not read CODEx nml', X=-5./"
+write(10,'(a)') " $CODE    char='Second desired nml', X=66.0 /"
+write(10,'(a)') " $CODE    X=77.0, char='Reordered desired nml'/"
+rewind(10)\r
+CHAR = 'Initialize string ***'\r
+X    = -777.\r
+READ(10, nml=CODE, END=999)
+if (x.ne.-3.0) call abort
+READ(10, nml=CODE, END=999)
+if (x.ne.44.0) call abort
+READ(10, nml=CODE, END=999)
+if (x.ne.66.0) call abort
+READ(10, nml=CODE, END=999)
+ 999 if (x.ne.77.0) call abort\r
+END PROGRAM namelist\r