[Bug libobjc/49883] clang + gcc 4.6 runtime = broken
nicola at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sun Oct 9 10:30:00 GMT 2011
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49883
--- Comment #2 from Nicola Pero <nicola at gcc dot gnu.org> 2011-10-09 10:29:54 UTC ---
Author: nicola
Date: Sun Oct 9 10:29:50 2011
New Revision: 179721
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=179721
Log:
In libobjc/:
2011-10-09 Nicola Pero <nicola.pero@meta-innovation.com>
PR libobjc/49883
* init.c (__objc_exec_class): Work around a bug in clang's code
generation. Clang sets the class->info field to values different
from 0x1 or 0x2 (the only allowed values in the traditional GNU
Objective-C runtime ABI) to store some additional information, but
this breaks backwards compatibility. Wipe out all the bits in the
fields other than the first two upon loading a class.
2011-10-09 Nicola Pero <nicola.pero@meta-innovation.com>
* class.c (objc_lookup_class): Added back for compatibility with
clang which seems to emit calls to it.
Modified:
trunk/libobjc/ChangeLog
trunk/libobjc/class.c
trunk/libobjc/init.c
More information about the Gcc-bugs
mailing list