A patch to fix the most obvious failures with -fwhole-file (take 2)

Steve Kargl sgk@troutmask.apl.washington.edu
Mon Dec 14 17:49:00 GMT 2009


On Mon, Dec 14, 2009 at 05:52:30PM +0100, Dominique Dhumieres wrote:
> > > +  call gee_i(int(i**(-huge(0_8)-1_8),kind=kind(i)))
> >
> > This is simply code obfuscation with no merit. ...
> 
> Had you run the test yourself, you'ld have seen
> 
> Warning: Type mismatch in argument 'i' at (1); passed INTEGER(8) to INTEGER(4)
> 
> In
> 
> subroutine gee_i(i)
>   integer :: i
> end subroutine gee_i
> 
> gee_i expects an integer, i**(-huge(0_8)-1_8) is integer(8) even if i is
> integer, unless the promotion of i to integer(8) to compute the power
> is a gfortran bug.
> 

I've already quoted the Fortran 2003 Standard.

-- 
Steve



More information about the Fortran mailing list