modula2: Simplify REAL/LONGREAL/SHORTREAL node creation.
[official-gcc.git] / gcc / testsuite / gfortran.dg / fmt_float.f90
blobff3d28eaca566c7570a0c942fd5543d2e4323652
1 ! { dg-do run }
2 ! PR33225 Missing last digit in some formatted output (on 32bit targets)
3 ! related to per kind write_float patch
4 ! Test case from PR.
5 real x
6 x = 1.0
7 print '(3E20.2e2)', x, x/10.0, x/100.0
8 print '(3E20.2e3)', x, x/10.0, x/100.0
9 print '(3E20.2e4)', x, x/10.0, x/100.0
10 print '(3E20.2e5)', x, x/10.0, x/100.0
11 print '(3E20.2e6)', x, x/10.0, x/100.0
12 print '(3E20.2e7)', x, x/10.0, x/100.0
13 print '(3E20.3e2)', x, x/10.0, x/100.0
14 print '(3E20.3e3)', x, x/10.0, x/100.0
15 print '(3E20.3e4)', x, x/10.0, x/100.0
16 print '(3E20.3e5)', x, x/10.0, x/100.0
17 print '(3E20.3e6)', x, x/10.0, x/100.0
18 print '(3E20.3e7)', x, x/10.0, x/100.0
19 print '(3E20.4e2)', x, x/10.0, x/100.0
20 print '(3E20.4e3)', x, x/10.0, x/100.0
21 print '(3E20.4e4)', x, x/10.0, x/100.0
22 print '(3E20.4e5)', x, x/10.0, x/100.0
23 print '(3E20.4e6)', x, x/10.0, x/100.0
24 print '(3E20.4e7)', x, x/10.0, x/100.0
25 end
26 ! { dg-output " 0.10E\\+01 0.10E\\+00 0.10E-01(\r*\n+)" }
27 ! { dg-output " 0.10E\\+001 0.10E\\+000 0.10E-001(\r*\n+)" }
28 ! { dg-output " 0.10E\\+0001 0.10E\\+0000 0.10E-0001(\r*\n+)" }
29 ! { dg-output " 0.10E\\+00001 0.10E\\+00000 0.10E-00001(\r*\n+)" }
30 ! { dg-output " 0.10E\\+000001 0.10E\\+000000 0.10E-000001(\r*\n+)" }
31 ! { dg-output " 0.10E\\+0000001 0.10E\\+0000000 0.10E-0000001(\r*\n+)" }
32 ! { dg-output " 0.100E\\+01 0.100E\\+00 0.100E-01(\r*\n+)" }
33 ! { dg-output " 0.100E\\+001 0.100E\\+000 0.100E-001(\r*\n+)" }
34 ! { dg-output " 0.100E\\+0001 0.100E\\+0000 0.100E-0001(\r*\n+)" }
35 ! { dg-output " 0.100E\\+00001 0.100E\\+00000 0.100E-00001(\r*\n+)" }
36 ! { dg-output " 0.100E\\+000001 0.100E\\+000000 0.100E-000001(\r*\n+)" }
37 ! { dg-output " 0.100E\\+0000001 0.100E\\+0000000 0.100E-0000001(\r*\n+)" }
38 ! { dg-output " 0.1000E\\+01 0.1000E\\+00 0.1000E-01(\r*\n+)" }
39 ! { dg-output " 0.1000E\\+001 0.1000E\\+000 0.1000E-001(\r*\n+)" }
40 ! { dg-output " 0.1000E\\+0001 0.1000E\\+0000 0.1000E-0001(\r*\n+)" }
41 ! { dg-output " 0.1000E\\+00001 0.1000E\\+00000 0.1000E-00001(\r*\n+)" }
42 ! { dg-output " 0.1000E\\+000001 0.1000E\\+000000 0.1000E-000001(\r*\n+)" }
43 ! { dg-output " 0.1000E\\+0000001 0.1000E\\+0000000 0.1000E-0000001(\r*\n+)" }