https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90150
kargl at gcc dot gnu.org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |kargl at gcc dot gnu.org
--- Comment #1 from kargl at gcc dot gnu.org ---
(In reply to federico from comment #0)
> Created attachment 46201 [details]
> Simple test program that reproduces the error
>
> Hi,
>
> just found this error in floating point string format in gfortran 7.4.0.
>
> The error affects floating point output (fX.Y), ONLY when this follows a
> scientific output with heading non-zeros (ZpeX.Y).
>
> The fX.Y output number is multiplied i.e. translated by as many digits as in
> the previous scientific specifier. The issue seems to happen only when both
> are part of a same string format.
>
> The attached program prints the same two numbers (1000.0, 10.0) three times
> with the following formats:
> A = 1000.0
> b = 10.0
>
> $ a.exe
> 0.100E+04 10.000 ! "(1e10.3,1x,f8.3)"
> 1.000E+03 100.000 ! "(1pe10.3,1x,f8.3)"
> 10.00E+02 1000.000 ! "(2pe10.3,1x,f8.3)"
>
>
Can you explain what you think the compiler should output?
The P edit descriptor affects the entire string not just
the immediately following edit descriptor.