http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53943

             Bug #: 53943
           Summary: Compiler ICE with -fobjc-direct-dispatch flag on Linux
    Classification: Unclassified
           Product: gcc
           Version: 4.6.3
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: objc
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: kostja.osi...@gmail.com


GCC Objective C compiler fails with an ICE when flag -fobjc-direct-dispatch is
set on Linux. I am aware that this flag is for Darwin, however, ICE is never a
good idea. Better to ignore the flag with a warning.

kostja@atlas:~$ cat foo.m 
#include <objc/runtime.h>
#include <objc/Object.h>
@interface Interface: Object
+ (id) new;
@end
@implementation Interface
+ (id) new
{
    return class_createInstance(self, 0);
}
@end
int main()
{
    @throw [Interface new];
}
kostja@atlas:~$ gcc -fobjc-direct-dispatch foo.m -lobjc
foo.m: In function ‘main’:
foo.m:14:2: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.6/README.Bugs> for instructions.
Preprocessed source stored into /tmp/ccjDs0Y7.out file, please attach this to
your bugreport.

Reply via email to