diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 954f011d72abc17fff925408c9771243dd46fff1..964e62f7347e7cab6e42ac781e4d849a5a2c86d5 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2008-03-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+	PR libfortran/35617
+	* gfortran.dg/namelist_45.f90: New test.
+
 2008-03-17  James E. Wilson  <wilson@tuliptree.org>
 
 	PR testsuite/35512
diff --git a/gcc/testsuite/gfortran.dg/namelist_45.f90 b/gcc/testsuite/gfortran.dg/namelist_45.f90
new file mode 100644
index 0000000000000000000000000000000000000000..3512d08b7ccb5612e1e5e8654f4016de6f62c373
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/namelist_45.f90
@@ -0,0 +1,18 @@
+! { dg-do run }
+! PR35617 read namelist error with '!'
+program test
+  character(len=128) :: mhdpath
+  namelist /nbdrive_naml/ mhdpath
+  open(10, file='test.nml')
+  
+  write(10,'(a)') "&nbdrive_naml"
+  write(10,'(a)') 
+  write(10,'(a)') "!nstep_stop = 2  ! uncomment to bar"
+  write(10,'(a)') "!nstep_start = 2 ! uncomment to foo"
+  write(10,'(a)') " mhdpath = 'mypath.dat'"
+  write(10,'(a)') "/"
+
+  rewind(10)
+  read(10, nbdrive_naml)
+  close(10,status="delete")
+end program test