Go to the first, previous, next, last section, table of contents.
As of 0.5.20, g77 defaults to handling COMPLEX types
(and related intrinsics, constants, functions, and so on)
in a manner that
makes direct debugging involving these types in Fortran
language mode difficult.
Essentially, g77 implements these types using an
internal construct similar to C's struct, at least
as seen by the gcc back end.
Currently, the back end, when outputting debugging info with
the compiled code for the assembler to digest, does not detect
these struct types as being substitutes for Fortran
complex.
As a result, the Fortran language modes of debuggers such as
gdb see these types as C struct types, which
they might or might not support.
Until this is fixed, switch to C language mode to work with
entities of COMPLEX type and then switch back to Fortran language
mode afterward.
(In gdb, this is accomplished via `set lang c' and
either `set lang fortran' or `set lang auto'.)
Note: Compiling with the `-fno-emulate-complex' option avoids the debugging problem, but is known to cause other problems like compiler crashes and generation of incorrect code, so it is not recommended.
Go to the first, previous, next, last section, table of contents.