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

Tobias Burnus <burnus at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |burnus at gcc dot gnu.org

--- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> 2012-02-29 
08:50:33 UTC ---
Post scriptum:

* For
    read (*, '(i18)') i
  the value -2147483648 is accepted
  But only if one has compiled the main program with -fno-range-check.

  Cf. libgfortran/io/read.c's read_decimal function.

* For
    read (*, *) i
  the value -2147483648 is always rejected, independent of that flag.

  Cf. libgfortran/io/list_read.c's convert_integer function.


Expected:

* A list-directed read gives the same result as a read with an edit descriptor.

* The value is always accepted - even without -fno-range-check.
  This flag is completely nontransparent (with regards to the run-time
library),
  it only works if the main program is compiled with that flag, and not even
  the documentation of the flag mentions that the run-time library is affected.

  See: -fno-range-check at
  http://gcc.gnu.org/onlinedocs/gfortran/Fortran-Dialect-Options.html

  Admittedly, it is mentioned at
  http://gcc.gnu.org/onlinedocs/gfortran/_005fgfortran_005fset_005foptions.html

Reply via email to