This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/37930] gfortran error and ICE at automatic type conversion with transfer intrinsic
- From: "burnus at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 31 Oct 2008 21:43:13 -0000
- Subject: [Bug fortran/37930] gfortran error and ICE at automatic type conversion with transfer intrinsic
- References: <bug-37930-8911@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #25 from burnus at gcc dot gnu dot org 2008-10-31 21:43 -------
(In reply to comment #24)
> First, gfortran (especially the constant folding) doesn't
> follow IEEE754 for NaN. AFAIK, there is no distinction
> between qNaN and sNaN.
There is no distinction in MPFR - that also the reason why -finit-real=sNaN is
not implemented. One reason for the lacking support in MPFR was that IEEE
754-1985 had no destinction (IEEE 754-2008 has).
Somehow we need to support at some point sNaN - not only for -finit-real=sNaN
but also for IEEE_VALUE.
> It appears that gfortran's error message is providing "some
> language-defined diagnostic information."
That part I think is OK.
> I'll also note that the diagnostic information tells you how to
> disable the range checking.
That is actually not true: For ARITH_NAN and ARITH_UNDERFLOW there is no
-fno-range-check mentioned - only for ARITH_OVERFLOW is.
Question: Is this bug now fixed or remains something else to do? (Besides
mentioning -fno-range-check in the error message and implementing F2003's IEEE
functions.)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37930