https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61759
--- Comment #6 from Douglas Mencken <dougmencken at gmail dot com> --- Looks like I found the root of the issue ~ GCC ICEs when it meets C++ exception handling (try+catch) $ cat main.mm #include <Foundation/Foundation.h> #include <iostream> int main (void) { try { throw 0; } catch (int & e) { std::cout << "caught" << std::endl; } NSString *name = @"GNUstep !"; NSAutoreleasePool *pool; pool = [NSAutoreleasePool new]; [pool drain]; } $ g++ main.mm -o test.out -framework Foundation -lobjc main.mm: In function 'int main()': main.mm:4:5: internal compiler error: in objc_eh_runtime_type, at objc/objc-next-runtime-abi-01.c:2804 int main (void) ^ libbacktrace could not find executable to open Please submit a full bug report,