diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 33d2825fc1cf036cb8eac76bd16a6e124b60031b..4c2efe41af74dc9ed468be60845dbbde2b5e7a45 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2006-10-15  Steven G. Kargl  <kargl@gcc.gnu.org>
+
+	PR fortran/29403
+	* gfortran.dg/print_1.f90: New test.
+
 2006-10-15  Jan Hubicka  <jh@suse.cz>
 
 	PR middle-end/29241
diff --git a/gcc/testsuite/gfortran.dg/print_1.f90 b/gcc/testsuite/gfortran.dg/print_1.f90
new file mode 100644
index 0000000000000000000000000000000000000000..8f4ef3cf4c22bd38c0054f7f0fdecfc44f94bfd2
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/print_1.f90
@@ -0,0 +1,20 @@
+! { dg-do compile }
+! PR fortran/29403
+program p
+   character(len=10) a, b, c
+   integer i
+   i = 1
+   print ('(I0)'), i
+   a = '(I0,'
+   b = 'I2,'
+   c = 'I4)'
+   call prn(a, b, c, i)
+   print (1,*), i       ! { dg-error "in PRINT statement" }
+end program p
+
+subroutine prn(a, b, c, i)
+  integer i
+  character(len=*) a, b, c
+  print (a//(b//c)), i, i, i
+  print trim(a//trim(b//c)), i, i, i
+end subroutine prn