This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libfortran/50105] [4.6/4.7 Regression] I/O with g6.5 - wrong number of "**" shown
- From: "burnus at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 19 Aug 2011 06:15:56 +0000
- Subject: [Bug libfortran/50105] [4.6/4.7 Regression] I/O with g6.5 - wrong number of "**" shown
- Auto-submitted: auto-generated
- References: <bug-50105-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50105
Tobias Burnus <burnus at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |4.6.2
Summary|Possibly: I/O with g6.5 - |[4.6/4.7 Regression] I/O
|wrong number of "**" shown |with g6.5 - wrong number of
| |"**" shown
--- Comment #7 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-08-19 06:15:56 UTC ---
I find the analysis of Malcolm (as usual) convincing, he thinks the correct
result is "** ".
Thus, I marked it again as regression - and removed the "possibly" from the
summary.
Malcolm wrote at http://j3-fortran.org/pipermail/j3/2011-August/004594.html
| The wording is quite tricky, you need to read it very carefully.
|
| It says (slight restructuring to make it clearer)
| "On output,
| (a) if an exponent exceeds its specified or implied width using the ...
| G edit descriptor,
| or
| (b) the number of characters produced exceeds the field width,
| [you get stars]"
|
| The bit that explicitly mentions G ***only applies to the exponent width
| being exceeded***.
|
| That is not the case here.
|
| What about the number of characters produced? Well, as Robert says, the
| F2.5 descriptor produces two characters (both stars) and the 4(' ')
| produces another 4, making a total of 6, within the width of G6.5.
|
| Perhaps this is merely bad wording, but it goes back a long way (F77).
And indeed not only gfortran < 4.6.0, g95, NAG and PGI but also g77 produces
"** ".
(While with gfortran >= 4.6.0, ifort, crayftn/open64/pathf95/sunf95 produce
"******".)
(We might still see an interpretation request confirming Malcolm's
interpretation - or changing the standard such that "******" is correct; only
the future will tell ...)