http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47434

--- Comment #8 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-01-27 
17:21:24 UTC ---
(In reply to comment #7)
> I remember the discussion when we first implemented this and we wanted the + 
> on
> Inf to be consistent with -Inf. 

Well, the following is in any case wrong:

  real :: inf
  inf = 0
  inf = 1/inf
  print "(sp,F0.2)", inf  ! SIGN=PLUS
  print "(ss,F0.2)", inf  ! SIGN=SUPPRESS
  print "(s, F0.2)", inf  ! SIGN=PROCESSOR_DEFINED
  end

The same result for "F4.2": Three times "+Inf". (Ditto for g95.)

For SIGN=SUPPRESS it should just print "Inf", whether "Inf" or "+Inf" is
correct for PROCESSOR_DEFINED is another question. For consistency with the
other compilers - and for consistency with 10.7.2.1(6), one should probably
remove the "+".

For "F4.2" also the other compilers do not seem to print a + with
sign='PROCESSOR_DEFINED' though I am not sure that I like
Intel's/pathscale's/open64's "Infi" for S and SS better. NAG and Sunf95 have "
Inf" for S/SS.


Regarding "0.00" vs ".00" with "F0.2": I do not have any real preference;
following 10.7.2.1(6) I am slightly inclined that ".00" is better.

Reply via email to