re PR libfortran/33225 (Missing last digit in some formatted output (on 32bit targets), per kind write_float)

2007-09-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/33225
	* gfortran.dg./fmt_float.f90: New test.

From-SVN: r128173
This commit is contained in:
Jerry DeLisle 2007-09-06 01:32:11 +00:00
parent 6f06d231a0
commit 8c292a7298
2 changed files with 48 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2007-09-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/33225
* gfortran.dg./fmt_float.f90: New test.
2007-09-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/33253

View File

@ -0,0 +1,43 @@
! { dg-do run }
! PR33225 Missing last digit in some formatted output (on 32bit targets)
! related to per kind write_float patch
! Test case from PR.
real x
x = 1.0
print '(3E20.2e2)', x, x/10.0, x/100.0
print '(3E20.2e3)', x, x/10.0, x/100.0
print '(3E20.2e4)', x, x/10.0, x/100.0
print '(3E20.2e5)', x, x/10.0, x/100.0
print '(3E20.2e6)', x, x/10.0, x/100.0
print '(3E20.2e7)', x, x/10.0, x/100.0
print '(3E20.3e2)', x, x/10.0, x/100.0
print '(3E20.3e3)', x, x/10.0, x/100.0
print '(3E20.3e4)', x, x/10.0, x/100.0
print '(3E20.3e5)', x, x/10.0, x/100.0
print '(3E20.3e6)', x, x/10.0, x/100.0
print '(3E20.3e7)', x, x/10.0, x/100.0
print '(3E20.4e2)', x, x/10.0, x/100.0
print '(3E20.4e3)', x, x/10.0, x/100.0
print '(3E20.4e4)', x, x/10.0, x/100.0
print '(3E20.4e5)', x, x/10.0, x/100.0
print '(3E20.4e6)', x, x/10.0, x/100.0
print '(3E20.4e7)', x, x/10.0, x/100.0
end
! { dg-output " 0.10E\\+01 0.10E\\+00 0.10E-01(\n|\r\n|\r)" }
! { dg-output " 0.10E\\+001 0.10E\\+000 0.10E-001(\n|\r\n|\r)" }
! { dg-output " 0.10E\\+0001 0.10E\\+0000 0.10E-0001(\n|\r\n|\r)" }
! { dg-output " 0.10E\\+00001 0.10E\\+00000 0.10E-00001(\n|\r\n|\r)" }
! { dg-output " 0.10E\\+000001 0.10E\\+000000 0.10E-000001(\n|\r\n|\r)" }
! { dg-output " 0.10E\\+0000001 0.10E\\+0000000 0.10E-0000001(\n|\r\n|\r)" }
! { dg-output " 0.100E\\+01 0.100E\\+00 0.100E-01(\n|\r\n|\r)" }
! { dg-output " 0.100E\\+001 0.100E\\+000 0.100E-001(\n|\r\n|\r)" }
! { dg-output " 0.100E\\+0001 0.100E\\+0000 0.100E-0001(\n|\r\n|\r)" }
! { dg-output " 0.100E\\+00001 0.100E\\+00000 0.100E-00001(\n|\r\n|\r)" }
! { dg-output " 0.100E\\+000001 0.100E\\+000000 0.100E-000001(\n|\r\n|\r)" }
! { dg-output " 0.100E\\+0000001 0.100E\\+0000000 0.100E-0000001(\n|\r\n|\r)" }
! { dg-output " 0.1000E\\+01 0.1000E\\+00 0.1000E-01(\n|\r\n|\r)" }
! { dg-output " 0.1000E\\+001 0.1000E\\+000 0.1000E-001(\n|\r\n|\r)" }
! { dg-output " 0.1000E\\+0001 0.1000E\\+0000 0.1000E-0001(\n|\r\n|\r)" }
! { dg-output " 0.1000E\\+00001 0.1000E\\+00000 0.1000E-00001(\n|\r\n|\r)" }
! { dg-output " 0.1000E\\+000001 0.1000E\\+000000 0.1000E-000001(\n|\r\n|\r)" }
! { dg-output " 0.1000E\\+0000001 0.1000E\\+0000000 0.1000E-0000001(\n|\r\n|\r)" }