GCC 3.3.1 Fortran compilation with -xf77-cpp-input

Steve Edwards edwardss@whl.co.uk
Sat Aug 16 11:35:00 GMT 2003


Hi,

I have encountered a slight oddity when using g77 from GCC 3.3.1. This 
does not appear to affect the ability of g77 to generate code but does 
produce a number of warnings that I don't think should appear.

Using a simple test program:

       program g77test

       implicit none

       print *,'test ok'

       end

and compiling with:

g77 -o g77test -O2 -W -Wall -Wsurprising g77test.f

Generates no error messages. Adding -xf77-cpp-input:

g77 -o g77test -O2 -W -Wall -Wsurprising -xf77-cpp-input g77test.f

produces:

cc1: warning: ignoring command line option '-Wsurprising'
cc1: warning: (it is valid for Fortran but not the selected language)
cc1: warning: ignoring command line option '-ffortran-bounds-check'
cc1: warning: (it is valid for Fortran but not the selected language)
cc1: warning: ignoring command line option '-fno-f2c'
cc1: warning: (it is valid for Fortran but not the selected language)

I checked the -ffortran-bounds-check option with:

       program g77test

       implicit none

       integer i

       real a(10)

       do i=1,11
         a(i)=float(i)
         print *,'test ok',a(i)
       enddo

       end

and compiled with:

g77 -o g77test -O2 -W -Wall -Wsurprising -fno-f2c -xf77-cpp-input 
g77test.f

and it runs as expected, printing out 1 to 11. Adding 
-ffortran-bounds-check correctly fails at run time with:

Subscript out of range on file line 10, procedure g77test.f/MAIN.
Attempt to access the 11-th element of variable a.
Aborted

so the fortran specific flags still look like they are working fine.

I'm not going to even think of digging into the GCC source code to try 
and work out why - I'll leave that to the experts...

Steve
----------------------------------------------------------
----------------------------------------------------------



More information about the Gcc-help mailing list