Dear all,

Firstly, let me say that I don't know that much about Fortran, but I use a source-code transformation tool that creates Fortran 77 code, which I feed to gfortran.

During this last stage, gfortran seems to have some problems to parse hexadecimal constants. I managed to reduce the problem to this very simple code:

TEST.f:

      PROGRAM HEX_TEST

      INTEGER(4) MASK

      MASK = 'c0'X

      END

~ $ gfortran -c TEST.f
 In file TEST.f:5

      MASK = 'c0'X
     1
Error: Unclassifiable statement at (1)


If, however, I make the following change:

      MASK = X'c0'

the program compiles correctly. I remember that I used this tool with g77 too and that I had no problem. Either form of a hexadecimal constant was accepted. The same holds for the Intel compiler.

Is this a bug of gfortran or some kind of extension that is not supported?

~ $ gfortran -v
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: ../gcc-4.0.2/configure --prefix=/home/iev/apps/gcc-4.0.2 --enable-languages=c,c++,f95 --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --disable-libgcj --disable-nls
Thread model: posix
gcc version 4.0.2

Best regards,

Ioannis

Reply via email to