This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Patch, Fortran, committed] Add LANG=C to libgfortran/

Tobias Schlüter wrote:
> Tobias Burnus wrote:
>> After getting failures when building GCC with a non-English locale, I
>> found out that
>>     huge=`$compile -c -fdump-parse-tree tmq$$.f90 | grep TRANSFER \
>>                 | sed 's/ *TRANSFER *// ; s/_.*//'`
> Since I couldn't find this expression, and since I can't think of an
> occasion where one would both want to match TRANSFER and where it's a
> good idea to translate it, I'm curious: could you say where or how
> this happens?

Did you do an "svn up"? The line was checked in this morning by FX.
Thus you really should have this line or SVN has serious troubles.

The problem was that GFC_REAL_16_HUGE etc. were sometimes different in
the library than huge(0.0_16) of the compiler.

Namely, on PowerPC and MIPS  huge(0.0_16) is not LDBL_MAX.


Now the following is used in libgfortran/

    # Check for the value of HUGE
    echo "print *, huge(0._$k) ; end" > tmq$$.f90
    huge=`$compile -c -fdump-parse-tree tmq$$.f90 | grep TRANSFER \
                | sed 's/ *TRANSFER *// ; s/_.*//'`

And "gfortran -fdump-parse-tree c.f90" shows than:
      WRITE UNIT=6 FMT=-1
        TRANSFER 3.40282347e38

which is, e.g., with a German locale translated to the barely readable
        ÜBERTRAGUNG 3.40282347e38
and thus the grep fails.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]