[Ifeffit] Ifeffit and gfortran (was: iffefit compile on BlueWhite64)

Matt Newville newville at cars.uchicago.edu
Thu Aug 23 11:40:41 CDT 2007


Hi Paul,

On 8/23/07, paul fons <paul-fons at aist.go.jp> wrote:
> gfortran -g -O2 -fPIC -c misc_rand.f
> misc_rand.f:111.36:
>
>        parameter(umask = -2147483648) ! most significant w-r bits
>                                    1
> Error: Integer too big for its kind at (1)

Thanks for the report.  This compiled for me on linux, using gfortran
4.1.1 and 4.1.2, and obviously works in g77.     I do see a reference
that  -2**31 is no longer a valid integer _constant_ in gfortran, but
that it can be (oddly enough), a valid integer _value_.  Weird.

I don't have an installation of gfortran 4.2 easily available.  Would
you be willing to try this change?  Comment out the parameter(umask
...) line, and simply set umask at the beginning of the executable
statements

******************************************************************************************
misc_rand.f lines 110,111,112 should read:

        parameter(mata  = -1727483681) ! constant vector a
c      parameter(umask = -2147483648) ! most significant w-r bits
        parameter(lmask =  2147483647) ! least significant r bits

misc_rand.f lines 129,130,131,132 should read:

c                        mag01(x) = x * mata for x=0,1
c
        umask = -2147483648  ! most significant w-r bits
        if(mti.ge.n) then
******************************************************************************************

That seems like it would be the easiest fix to me.

Thanks,

--Matt



More information about the Ifeffit mailing list