[Bug libfortran/48906] Wrong rounding results with -m32

2014-01-11 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 Jerry DeLisle changed: What|Removed |Added Status|WAITING |RESOLVED Resolution|---

[Bug libfortran/48906] Wrong rounding results with -m32

2013-06-16 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 Dominique d'Humieres changed: What|Removed |Added Status|UNCONFIRMED |WAITING Last reconfirmed|

[Bug libfortran/48906] Wrong rounding results with -m32

2011-07-01 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #39 from Jerry DeLisle 2011-07-02 01:32:42 UTC --- Very Good, I will work toward this end.

[Bug libfortran/48906] Wrong rounding results with -m32

2011-07-01 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #38 from Thomas Henlich 2011-07-01 09:22:48 UTC --- The Fortran standards committee has voted to edit the standard: http://j3-fortran.org/doc/meeting/195/11-174r2.txt This makes our current approach standard compliant (with the corr

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-10 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #37 from Jerry DeLisle 2011-06-10 17:29:54 UTC --- Updated patch posted for approval: http://gcc.gnu.org/ml/fortran/2011-06/msg00097.html Thomas, thanks for working the Standard issues and your testing.

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-10 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #36 from Thomas Henlich 2011-06-10 17:01:34 UTC --- (In reply to comment #34) > Additional note: The standard states: > > "Let N be the magnitude of the internal value" > > The internal value is to be used to determine the conversi

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-10 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #35 from Thomas Henlich 2011-06-10 16:56:02 UTC --- (In reply to comment #33) > The last test case I am working is fmt_g0_6.f08. > > The apparent failing case is: > > print "(rc,g15.2)", 0.995000_8 > > Which is resulting in

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-10 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #34 from Jerry DeLisle 2011-06-10 16:22:20 UTC --- Additional note: The standard states: "Let N be the magnitude of the internal value" The internal value is to be used to determine the conversion to F formatting. I think this adds

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-10 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #33 from Jerry DeLisle 2011-06-10 16:16:19 UTC --- The last test case I am working is fmt_g0_6.f08. The apparent failing case is: print "(rc,g15.2)", 0.995000_8 Which is resulting in 0.99 and we expect it to be 1.0. However

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-07 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #32 from Jerry DeLisle 2011-06-07 17:06:03 UTC --- I managed to get pr20755.f fixed last night with only a minor change and I found a problem elsewhere for fmt_g0_6.f08 which I am still working on. I will have a look at your patch in

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-06 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #31 from Thomas Henlich 2011-06-07 06:56:54 UTC --- (In reply to comment #30) > Created attachment 24454 [details] > Patch for scale factor. PUBLIC DOMAIN A had a go at this. Feel free to improve.

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-06 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #30 from Thomas Henlich 2011-06-07 06:56:13 UTC --- Created attachment 24454 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=24454 Patch for scale factor. PUBLIC DOMAIN

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-06 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #29 from Thomas Henlich 2011-06-06 12:47:58 UTC --- (In reply to comment #27) > > > > print "(-2pg12.3)", 0.02 ! 0.200E-01 expected 0.002E+01 > > print "(-1pg12.3)", 0.02 ! 0.200E-01 expected 0.020E+00 > > print "(0pg12.3)", 0.02 ! 0.

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-06 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #28 from Thomas Henlich 2011-06-06 12:41:55 UTC --- I had a look at the code and what I think we should do is the following: If G editing and a scale factor p != 0 is in effect, split the rounding step into 2 steps: First, check if

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-06 Thread jvdelisle at charter dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #27 from jvdelisle at charter dot net 2011-06-06 12:36:21 UTC --- > > print "(-2pg12.3)", 0.02 ! 0.200E-01 expected 0.002E+01 > print "(-1pg12.3)", 0.02 ! 0.200E-01 expected 0.020E+00 > print "(0pg12.3)", 0.02 ! 0.200E-01 > print "(1pg1

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-06 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #26 from Thomas Henlich 2011-06-06 12:27:38 UTC --- (In reply to comment #25) > My confusion seems to be when scale factor is to be ignored and when not, I > will give the standard another read. As it happens, you're not the only o

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-06 Thread jvdelisle at charter dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #25 from jvdelisle at charter dot net 2011-06-06 12:09:48 UTC --- On 06/06/2011 01:38 AM, thenlich at users dot sourceforge.net wrote: > For a scale factor 0, we are done. Good work, thank you! > > A scale factor != 0 does not work yet,

Re: [Bug libfortran/48906] Wrong rounding results with -m32

2011-06-06 Thread jerry DeLisle
On 06/06/2011 01:38 AM, thenlich at users dot sourceforge.net wrote: For a scale factor 0, we are done. Good work, thank you! A scale factor != 0 does not work yet, you wrote you are still working on it, is that correct? I am now. ;) print "(-2pg12.3)", 0.02 ! 0.200E-01 expected 0.002E+01

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-06 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #24 from Thomas Henlich 2011-06-06 08:38:13 UTC --- (In reply to comment #23) > Patch submitted to list for approval. For a scale factor 0, we are done. Good work, thank you! A scale factor != 0 does not work yet, you wrote you are

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-03 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #23 from Jerry DeLisle 2011-06-03 12:55:21 UTC --- Patch submitted to list for approval.

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-01 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 Jerry DeLisle changed: What|Removed |Added Attachment #24406|0 |1 is obsolete|

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-01 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #21 from Jerry DeLisle 2011-06-01 12:26:28 UTC --- Regarding comment #18, the test case passes regardless 0f the -std=legacy option specified at the beginning of the source file. I am questioning why that option is ignored in current

[Bug libfortran/48906] Wrong rounding results with -m32

2011-06-01 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #20 from Thomas Henlich 2011-06-01 08:12:31 UTC --- (In reply to comment #18) > Created attachment 24406 [details] > New updated patch > > This updated patch takes care of Comment #16. Unfortunately, now the other testcases fail aga

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-31 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #19 from Thomas Henlich 2011-06-01 06:26:27 UTC --- > Also, the test case, pr20755.f was originally intended to pass only with > -std=legacy. This is to mimic g77 which does not ignore the scale factor. At > least recently, gfortran

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-31 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 Jerry DeLisle changed: What|Removed |Added Attachment #24399|0 |1 is obsolete|

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-31 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #17 from Jerry DeLisle 2011-05-31 12:30:00 UTC --- As you can tell, finding the magic formula with this new approach is not a trivial effort. ;) My fear is that there is an unlimited number of corner cases.

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-30 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #16 from Thomas Henlich 2011-05-31 06:28:25 UTC --- print "(rc,g11.1)", 2. ! 0.2E+01 expected 2. print "(rc,g11.2)", 20. ! 0.20E+02 expected 20. print "(rc,g11.3)", 200. ! 0.200E+03 expected 200. print "(rc,g11.4)", 20

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-30 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #15 from Thomas Henlich 2011-05-31 06:05:19 UTC --- I hadn't really thought of that, but now I see what a PITA a scale factor > 0 is going to be (scale factor < 0 is simply padding with zeros and shifting digits): We have to ignore t

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-30 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 Jerry DeLisle changed: What|Removed |Added Attachment #24364|0 |1 is obsolete|

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-27 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #13 from Jerry DeLisle 2011-05-27 14:32:12 UTC --- OK, thanks for test cases, these are very helpful.

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-27 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #12 from Thomas Henlich 2011-05-27 13:12:32 UTC --- The following examples fail: print "(rc,g10.2,'<')", 99.5 ! 10. expected 0.10E+03 print "(rc,g10.2,'<')", 995. ! 1.0E+03 expected 0.10E+04 print "(rc,g10.3,'<')", 999.5

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-27 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #11 from Thomas Henlich 2011-05-27 08:55:14 UTC --- The scale factor is applied to F editing, but it shouldn't. See Fortran 2008: NOTE 10.20 The scale factor has no effect on output unless the magnitude of the datum to be edited is o

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-27 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #10 from Thomas Henlich 2011-05-27 07:15:16 UTC --- The test cases from above still fail (but with a different result): print "(ru,g15.2)", .099d0 ! 1.0E-01 expected 0.10 print "(rc,g15.1)", .095d0 ! 1.E-01 expected 0.1 pr

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-26 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #9 from Jerry DeLisle 2011-05-26 12:53:30 UTC --- Created attachment 24364 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=24364 Preliminary patch I am getting two testsuite regressions with this patch. At least one of those I th

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-23 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #8 from Jerry DeLisle 2011-05-23 19:00:54 UTC --- Status: I am down to about 5 testsuite failures on the patch for this. There is a lot if interplay going on, so i will be factoring the code some as part of the cleanup. Stay tuned.

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-19 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #7 from Jerry DeLisle 2011-05-19 12:58:34 UTC --- It was the last case I was having trouble with. I also was getting different results from different compilers, so I needed to confirm independently. I have this part working now. Still

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-19 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #6 from Thomas Henlich 2011-05-19 08:05:32 UTC --- (In reply to comment #5) As a general rule, d specifies the number of significant digits in the result, i.e. the number of digits counting from the first non-zero digit. So in the e

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-18 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #5 from Jerry DeLisle 2011-05-19 05:13:25 UTC --- Thomas, What are the correct results for this test case: implicit none integer, parameter :: RT = 8 write(*, "(rc,f11.2,4x,'

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-10 Thread thenlich at users dot sourceforge.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #4 from Thomas Henlich 2011-05-10 17:16:47 UTC --- Way to go! I'll be happy to test.

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-10 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #3 from Jerry DeLisle 2011-05-10 12:53:07 UTC --- Status: I have managed to eliminate the OUTPUT_FLOAT_G macro completely and all floating point operations. What remains is to adjust the trailing blanks. The patch is simple looking

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-06 Thread kargl at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 kargl at gcc dot gnu.org changed: What|Removed |Added CC||kargl at gcc dot gnu.org --- Co

[Bug libfortran/48906] Wrong rounding results with -m32

2011-05-06 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48906 --- Comment #1 from Jerry DeLisle 2011-05-06 21:10:07 UTC --- Repeating Thomas T. suggestion: "We can treat FMT_G like FMT_E. After the rounding step, i.e. when the final value of the variable e in output_float() is known (at the label 'skip'),