------- Comment #6 from kargl at gcc dot gnu dot org  2007-09-03 03:58 -------
(In reply to comment #3)
> (In reply to comment #1)
>> This is assuming that an asymmetric range is permitted in Fortran which
>> I think
>> it is not.  You can use -fno-range-check to disable this check.
>> 
> 
> In the IBM XL Fortran 90 manual:
> pg 19
> I quote: for Integer Kind parameter 4 range of value "-2147483648 through to
> 2147483647"
> namely  -(2^31) to (2^31 -1)

The IBM XL manual isn't the Fortran standard.

> Compiling this using gcc-gfortran-4.1.X and gcc-g77-3.X
> works

It was a bug in older versions of gfortran.

> 
> It is a Fortran standard!
>

The Fortran 95 standard doesn't specify the values that an integer
can take.  It does specify the model numbers for integer.  There is
a difference!

In "i = - 2147483648", the RHS is an expression.  It is a unary minus
operator with the operand 2147483648, which is greater than 2^31-1.


-- 


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

Reply via email to