This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug objc++/61759] [ICE] [objc] reaching gcc_unreachable in objc_eh_runtime_type at objc/objc-next-runtime-abi-01.c


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61759

Eric Gallager <egallager at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |egallager at gcc dot gnu.org

--- Comment #7 from Eric Gallager <egallager at gcc dot gnu.org> ---
(In reply to Douglas Mencken from comment #6)
> 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,

This is similar to bug 35756 but since you have a different testcase I'll leave
this open as a separate bug. Anyways, I think I have bad headers on my system,
because my compiler chokes in that part:

$ /usr/local/bin/g++ 61759_main.mm -o test.out -framework Foundation -lobjc
In file included from
/System/Library/Frameworks/Security.framework/Headers/Security.h:57:0,
                 from
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Headers/LSSharedFileList.h:32,
                 from
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Headers/LaunchServices.h:37,
                 from
/System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h:41,
                 from
/System/Library/Frameworks/ApplicationServices.framework/Headers/ApplicationServices.h:20,
                 from
/System/Library/Frameworks/Foundation.framework/Headers/NSAppleEventDescriptor.h:8,
                 from
/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:107,
                 from 61759_main.mm:1:
/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h:102:46:
error: shift expression ‘(1853123693 << 8)’ overflows [-fpermissive]
     kSecAuthenticationTypeNTLM             = AUTH_TYPE_FIX_ ('ntlm'),
                                              ^
/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h:102:46:
error: enumerator value for ‘kSecAuthenticationTypeNTLM’ is not an integer
constant
     kSecAuthenticationTypeNTLM             = AUTH_TYPE_FIX_ ('ntlm'),
                                              ^
/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h:103:46:
error: shift expression ‘(1836281441 << 8)’ overflows [-fpermissive]
     kSecAuthenticationTypeMSN              = AUTH_TYPE_FIX_ ('msna'),
                                              ^
/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h:103:46:
error: enumerator value for ‘kSecAuthenticationTypeMSN’ is not an integer
constant
     kSecAuthenticationTypeMSN              = AUTH_TYPE_FIX_ ('msna'),
                                              ^
/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h:104:46:
error: shift expression ‘(1685086561 << 8)’ overflows [-fpermissive]
     kSecAuthenticationTypeDPA              = AUTH_TYPE_FIX_ ('dpaa'),
                                              ^
/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h:104:46:
error: enumerator value for ‘kSecAuthenticationTypeDPA’ is not an integer
constant
     kSecAuthenticationTypeDPA              = AUTH_TYPE_FIX_ ('dpaa'),
                                              ^
/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h:105:46:
error: shift expression ‘(1919967585 << 8)’ overflows [-fpermissive]
     kSecAuthenticationTypeRPA              = AUTH_TYPE_FIX_ ('rpaa'),
                                              ^
/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h:105:46:
error: enumerator value for ‘kSecAuthenticationTypeRPA’ is not an integer
constant
     kSecAuthenticationTypeRPA              = AUTH_TYPE_FIX_ ('rpaa'),
                                              ^
/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h:106:46:
error: shift expression ‘(1752462448 << 8)’ overflows [-fpermissive]
     kSecAuthenticationTypeHTTPBasic        = AUTH_TYPE_FIX_ ('http'),
                                              ^
/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h:106:46:
error: enumerator value for ‘kSecAuthenticationTypeHTTPBasic’ is not an integer
constant
     kSecAuthenticationTypeHTTPBasic        = AUTH_TYPE_FIX_ ('http'),
                                              ^
/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h:107:46:
error: shift expression ‘(1752462436 << 8)’ overflows [-fpermissive]
     kSecAuthenticationTypeHTTPDigest       = AUTH_TYPE_FIX_ ('httd'),
                                              ^
/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h:107:46:
error: enumerator value for ‘kSecAuthenticationTypeHTTPDigest’ is not an
integer constant
     kSecAuthenticationTypeHTTPDigest       = AUTH_TYPE_FIX_ ('httd'),
                                              ^
/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h:108:46:
error: shift expression ‘(1718579821 << 8)’ overflows [-fpermissive]
     kSecAuthenticationTypeHTMLForm         = AUTH_TYPE_FIX_ ('form'),
                                              ^
/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h:108:46:
error: enumerator value for ‘kSecAuthenticationTypeHTMLForm’ is not an integer
constant
     kSecAuthenticationTypeHTMLForm         = AUTH_TYPE_FIX_ ('form'),
                                              ^
/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h:109:46:
error: shift expression ‘(1684434036 << 8)’ overflows [-fpermissive]
     kSecAuthenticationTypeDefault          = AUTH_TYPE_FIX_ ('dflt'),
                                              ^
/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h:109:46:
error: enumerator value for ‘kSecAuthenticationTypeDefault’ is not an integer
constant
     kSecAuthenticationTypeDefault          = AUTH_TYPE_FIX_ ('dflt'),
                                              ^
In file included from /usr/local/include/c++/8.0.0/bits/ios_base.h:46:0,
                 from /usr/local/include/c++/8.0.0/ios:42,
                 from /usr/local/include/c++/8.0.0/ostream:38,
                 from /usr/local/include/c++/8.0.0/iostream:39,
                 from 61759_main.mm:2:
/usr/local/include/c++/8.0.0/system_error:191:23: internal compiler error: Bus
error
     explicit operator bool() const noexcept
                       ^~~~
libbacktrace could not find executable to open
Please submit a full bug report,
with preprocessed source if appropriate.
See <https://gcc.gnu.org/bugs/> for instructions.

And my ICE looks similar to the one I get in bug 57607 which also includes the
c++ <iostream> header...

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]