: libfortran
Assignee: unassigned at gcc dot gnu.org
Reporter: thenlich+gccbug at gmail dot com
Target Milestone: ---
When using the EN descriptor with d=0 (ENw.0) and rounding mode UP or DOWN the
result is totally wrong:
program test_en
print "(RU,EN9.0)", 800.0_8
Priority: P3
Component: libfortran
Assignee: unassigned at gcc dot gnu.org
Reporter: thenlich+gccbug at gmail dot com
Target Milestone: ---
G editing is supposed to use F editing when the number fits in d digits, which
it does in the following example #1.
But when
Priority: P3
Component: libfortran
Assignee: unassigned at gcc dot gnu.org
Reporter: thenlich+gccbug at gmail dot com
Target Milestone: ---
In 2018, J3 Fortran Standards Committee agreed to add "leading zero format
control" to its work list for Fortran 20
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90374
--- Comment #31 from Thomas Henlich ---
Jerry, I reviewed some of the code in write_float.def:
478 /* Calculate the format of the exponent field. */
479 if (expchar && !(dtp->u.p.g0_no_blanks && e == 0))
480 {
481 edigits = 1;
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90374
--- Comment #30 from Thomas Henlich ---
(In reply to Jerry DeLisle from comment #29)
> I think this last patch above fixes the last adjustment needed. I could be
> wrong I suppose. Is this ready to close?
Jerry, thanks for the good work so far!
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90374
--- Comment #26 from Thomas Henlich ---
I must admit that the following F2018 clause invalidates my previous comment,
because it applies to G editing specifically (but not to E editing)
13.7.5.2.2 Generalized real and complex editing
...
3
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90374
--- Comment #25 from Thomas Henlich ---
On second thoughts, I change my mind to:
c) the same output as G0.10 editing ("0.10E+1235") because there is no
need to do it differently for E editing.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90374
--- Comment #24 from Thomas Henlich ---
There is another issue with E0.d editing, concerning the case |exp| ≥ 1000 with
extended and quad precision.
In addition to tables 13.1 ... 13.3, the standard says:
13.7.2 Numeric editing
13.7.2.1 Ge
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90374
--- Comment #23 from Thomas Henlich ---
(In reply to Jerry DeLisle from comment #21)
> Author: jvdelisle
> Date: Thu Jan 2 00:57:31 2020
> New Revision: 279828
>
> URL: https://gcc.gnu.org/viewcvs?rev=279828&root=gcc&view=rev
Jerry, please not
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90374
--- Comment #18 from Thomas Henlich ---
(In reply to Thomas Henlich from comment #13)
> For example:
>
> gfc_notify_std (GFC_STD_F2018, "positive width required at %L",
> &format_locus)
>
> should read
> gfc_notify_std (GFC_STD_F2018, "zero wid
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90374
--- Comment #15 from Thomas Henlich ---
(In reply to Thomas Henlich from comment #13)
As reference, see this comment:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51081#c0
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90374
--- Comment #14 from Thomas Henlich ---
(In reply to Thomas Henlich from comment #13)
As reference, see this comment:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51081#c0
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90374
--- Comment #13 from Thomas Henlich ---
Just a minor issue: I think that the sense of the message arguments in calls to
gfc_notify_std() should be inverted - they should describe the feature as
supported in the correct standard, and not as an err
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90374
--- Comment #12 from Thomas Henlich ---
The following:
program test
write(*, "(e0.10e2)") 0.00314_4
end
results in error:
At line 2 of file test-f2018.f90 (unit = 6, file = 'stdout')
Fortran runtime error: Period required in format
(e0.10
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90374
--- Comment #10 from Thomas Henlich ---
(In reply to Jerry DeLisle from comment #5)
> Author: jvdelisle
> Date: Thu Nov 28 18:33:20 2019
> New Revision: 278817
>
> URL: https://gcc.gnu.org/viewcvs?rev=278817&root=gcc&view=rev
> Log:
> PR f
Severity: normal
Priority: P3
Component: fortran
Assignee: unassigned at gcc dot gnu.org
Reporter: thenlich+gccbug at gmail dot com
Target Milestone: ---
The new features of Fortran 2018 (ISO/IEC JTC1/SC22/WG5 N2145):
"5.5 d0.d, e0.d, es0.d, en0.d,
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90290
--- Comment #2 from Thomas Henlich ---
The road to standards non-compliance hell is paved with very minor offenses...
;-)
Priority: P3
Component: fortran
Assignee: unassigned at gcc dot gnu.org
Reporter: thenlich+gccbug at gmail dot com
Target Milestone: ---
According to Fortran 2008, a stop-code in a stop-stmt or error-stop-stmt must
be either scalar-default-char-constant-expr or
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=47660
Thomas Henlich changed:
What|Removed |Added
Status|WAITING |RESOLVED
Resolution|---
19 matches
Mail list logo