http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60563
--- Comment #9 from Iain Sandoe <iains at gcc dot gnu.org> --- sadly, this seems to be a ld64 bug - present when using uncompressed EH (which is the default for GCC on darwin). If I manually enable compressed EH (which is the default now for the platform) the test passes. Will investigate whether we can yet enable compressed EH for all of GCC; it's possible that we still emit too many other constructs that break the ld64 atom model. A work-around for this issue is: { dg-additional-options "-fno-align-functions" { target { *-*-darwin* } } } with a FIXME comment that this is catering for an external tool bug (as usual, we cannot expect ld64 to be fixed on any darwin < 13).