http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50678
--- Comment #27 from Iain Sandoe <iains at gcc dot gnu.org> 2011-10-12 22:48:18 UTC --- (In reply to comment #26) > > reproducible (using gdb 7.1) on darwin9 @ m64 (m32 is OK on D9 and D10) - > > - so where are we looking for a problem- in the m64 libgcc_s unwinder - or > > in > > the ada handers? .. or in libSystem ? > > First the signal unwinder, i.e. how it restores registers that have been saved > by the kernel when the signal was raised. So libgcc or the system equivalent > if there is one. Unfortunately my Darwin knowledge is pretty limited... OK. well libgcc_s or libSystem contains the unwinder, depending on whether it's darwin9 or darwin10 (and assuming that there's no insertion caused by a DYLD_LIBRARY_PATH). I'll have to trawl through it in more detail. I suppose that the fact that the tests pass at -O0 might simply reflect different register usage... I was hoping that it might indicate a code-gen problem ;-)