[Bug fortran/51197] [4.7 Regression] Backtrace information less useful
kargl at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Nov 17 20:25:00 GMT 2011
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51197
kargl at gcc dot gnu.org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |kargl at gcc dot gnu.org
--- Comment #1 from kargl at gcc dot gnu.org 2011-11-17 20:04:07 UTC ---
(In reply to comment #0)
> Hi,
>
> the backtrace facility is less useful with 4.7 than with 4.6.
>
> Example:
>
> program backtrace
> implicit none
> print *, foo (0.0)
> contains
> function foo (x)
> real, intent (in) :: x
> real :: foo
> foo = 1 / x
> end function foo
> end program backtrace
>
>
> gfortran 4.7 (svn revision 181390, arch is i686-pc-linux-gnu):
>
> % /opt/gcc/4.7/bin/gfortran -g -fbacktrace gfcbug113.f90
> -ffpe-trap=zero,overflow,invalid -static-libgfortran
> % ./a.out
>
> A fatal error occurred! Backtrace for this error:
> #0 0x80588BF in _gfortrani_show_backtrace at backtrace.c:261
> #1 0x80494B7 in _gfortrani_backtrace_handler at compile_options.c:46
> #2 0xFFFFE3FF
> #3 0x80493B3 in foo at gfcbug113.f90:8
> #4 0x804940B in backtrace at gfcbug113.f90:3
> Floating point exception (core dumped)
>
>
> With gfortran 4.6:
>
> Program received signal 8 (SIGFPE): Floating-point exception.
>
> Backtrace for this error:
> + [0xffffe400]
> + function foo (0x80494B3)
> at line 8 of file gfcbug113.f90
> + function backtrace (0x804950C)
> at line 3 of file gfcbug113.f90
> + /lib/libc.so.6(__libc_start_main+0xe5) [0xb7641705]
>
>
> Same for SIGSEGV etc. It would be nice if I got back
> the old behaviour where the actual error is displayed.
> I'm not always good at guessing...
>
What exactly do you want?
In 4.7, the last line of the backtrace is
"Floating point exception (core dumped)".
That matches the first line from 4.6
"Program received signal 8 (SIGFPE): Floating-point exception."
In 4.7, the line
#3 0x80493B3 in foo at gfcbug113.f90:8
contains all of the information from 4.6
+ function foo (0x80494B3)
at line 8 of file gfcbug113.f90
--
steve
More information about the Gcc-bugs
mailing list