http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53927
Jason Merrill <jason at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |WAITING CC| |jason at gcc dot gnu.org --- Comment #3 from Jason Merrill <jason at gcc dot gnu.org> 2013-01-31 19:23:02 UTC --- I don't see the problem. On both i686 and x86_64 'p self_call' prints 1, which matches the value returned by the function, so debugging seems to be working fine. On i686 the DW_AT_static_link points to $eax because that's where the static chain lives during (part of) the function. As Eric says, the value of the static chain pointer is not the same as the CFA; it points to a struct in the stack frame of the caller. What's the bug?