re PR fortran/32554 ([4.2 Only] Bug in P formatting)
authorJerry DeLisle <jvdelisle@gcc.gnu.org>
Sun, 1 Jul 2007 15:49:37 +0000 (15:49 +0000)
committerJerry DeLisle <jvdelisle@gcc.gnu.org>
Sun, 1 Jul 2007 15:49:37 +0000 (15:49 +0000)
2007-06-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/32554
* gfortran.dg/fmt_p_1.f90: New test.

From-SVN: r126174

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

index 8ca9614..2a7786c 100644 (file)
@@ -1,3 +1,8 @@
+2007-06-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR libgfortran/32554
+       * gfortran.dg/fmt_p_1.f90: New test.
+
 2007-07-01  Ira Rosen  <irar@il.ibm.com>
 
        * gcc.dg/vect/vect-strided-store-u16-i4.c: Remove abort() from input
diff --git a/gcc/testsuite/gfortran.dg/fmt_p_1.f90 b/gcc/testsuite/gfortran.dg/fmt_p_1.f90
new file mode 100644 (file)
index 0000000..2f3c662
--- /dev/null
@@ -0,0 +1,13 @@
+! { dg-do run }
+! PR32554 Bug in P formatting
+! Test case from the bug reporter
+program gfcbug66
+  real(8) :: x = 1.0e-100_8
+  character(50) :: outstr
+  write (outstr,'(1X,2E12.3)')    x, 2 * x
+  if (outstr.ne."    0.100E-99   0.200E-99") call abort
+  ! Before patch 2 * x was put out wrong
+  write (outstr,'(1X,1P,2E12.3)') x, 2 * x
+  if (outstr.ne."    1.000-100   2.000-100") call abort
+end program gfcbug66
+