FW: Compile problem

toon@moene.indiv.nluug.nl toon@moene.indiv.nluug.nl
Fri Dec 31 20:54:00 GMT 1999


Marilyn Celestin <marilyn@cae.ca> wrote:

Also, after I send you the mail I did some more investigating. I cannot send
you a copy of the source code (copyright issues). I can tell you this: I
noticed there was a call to signal in the code:
                integer i, signal
                ii=signal(%val(2),%val(1))

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Thanks, very useful information.  With it I managed to deduce that:

        program aap
        integer i, signal
        ii=signal(%val(2),%val(1))
        end

would give:

% g77 b.f
./../../egcs/gcc/f/com.c:3911: failed assertion `"bad op" == NULL'
g77: Internal compiler error: program f771 got fatal signal 6

The reason this is different between `signal', `exit' on the one hand
and `sigset' on the other is that the first two are INTRINSIC functions
known to g77 - it knows their calling convention, which isn't "pass 
argument by value".

Apparently the Fortran Frontend gets confused while finding this out
and subsequently doesn't give you a useful message, but a core dump
instead.  So, indeed, this is a compiler error.

Thanks for your bug report.
Toon Moene.



More information about the Gcc-bugs mailing list