[MacPorts] #47049: gfortran backtrace issue
MacPorts
noreply at macports.org
Thu Mar 5 13:45:05 PST 2015
#47049: gfortran backtrace issue
--------------------------------+--------------------------------
Reporter: barry.j.mcinnes@… | Owner: macports-tickets@…
Type: request | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.3.3
Keywords: gfortran backtrace | Port: gfortran
--------------------------------+--------------------------------
We have gdb to work and have set the com.apple.taskgated.plist to add the
-p as specified in the macports install of gdb.
We are 10.10.2 and latest as of March 5 with macports and fortran 4.9.2.
Just concerned that Linux fortran gives the extra lin information and
macports version does not. Here is the user description of a small test
program,
that displays this issue. He has a much larger program he wants the line
numbers displayed if at all possible on the macports fortran.
Compare this with the Linux backtrace lower down.
The key difference for this very short demo program is that the Linux
backtrace shows the source label, source file name, and source line number
in the backtrace. "MAIN__ at btest.f90:12". This is the symbol
information from a non-stripped object file, a.out in this case.
The backtrace on Mac is missing all of this.
I am not concerned about the first three lines in the Linux call stack.
These are probably low-level calls within a stripped runtime library.
This is not a new problem. Backtrace symbols were missing in the last
several versions of gfortran, Mac OS, and Xcode on PSD Macs.
mac56:/home/dallured/btest 7> gfortran --version | grep gcc
GNU Fortran (MacPorts gcc49 4.9.2_1) 4.9.2
mac56:/home/dallured/btest 8> gfortran -g -ffpe-trap=zero btest.f90
mac56:/home/dallured/btest 9> ./a.out
Start program.
Divide by zero.
Program received signal SIGFPE: Floating-point exception - erroneous
arithmetic operation.
Backtrace for this error:
#0 0x10b15bfbc
#1 0x10b15c4df
#2 0x7fff94646f19
#3 0x10b155cb7
#4 0x10b155e4e
Floating exception
==================================================
linux64:~/btest 1025> /usr/locale/bin/gfortran --version | grep GCC
GNU Fortran (GCC) 4.9.2
linux64:~/btest 1026> /usr/locale/bin/gfortran -g -ffpe-trap=zero
btest.f90
linux64:~/btest 1027> ./a.out
Start program.
Divide by zero.
Program received signal SIGFPE: Floating-point exception - erroneous
arithmetic operation.
Backtrace for this error:
#0 0x7F225DDA8347
#1 0x7F225DDA894E
#2 0x3585A3269F
#3 0x400978 in MAIN__ at btest.f90:12
Floating exception (core dumped)
--
Ticket URL: <https://trac.macports.org/ticket/47049>
MacPorts <https://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list