https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64999
--- Comment #44 from boger at us dot ibm.com --- If we do the increment of the pc to fix it in the callback, here is how that happens: - backtrace_full gets the pc and decrements by 1 - backtrace_full calls backtrace_pcinfo to look up the file, function, line number information based on the decremented pc - backtrace_pcinfo calls the callback function after the line number has been determined. If the pc is incremented here then it might not correspond to the line number anymore. A common example is if you have a statement that does a function call with no return value, the line number will be wrong because the call instruction and the instruction following the call correspond to different line numbers.