This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
objc gnu runtime losage
- To: zlaski at apple dot com, shebs at apple dot com
- Subject: objc gnu runtime losage
- From: Richard Henderson <rth at redhat dot com>
- Date: Thu, 11 Oct 2001 18:32:18 -0700
- Cc: gcc-patches at gcc dot gnu dot org
The gnu runtime is currently failing everywhere because (at least
for NXConstStr.m) we are failing to generate a proper symtab for
_OBJ_MODULES.
With gcc 3.0 I get
_OBJC_MODULES:
.quad 8
.quad 32
.quad _OBJC_CLASS_NAME_2
.quad _OBJC_SYMBOLS
With gcc 3.1 I get
.quad 8
.quad 32
.quad _OBJC_CLASS_NAME_2
.quad 0
The NULL pointer there results in a crash at libobjc/init.c:461.
I have been unable to figure out why the logic in 3.1 is wrong,
but the following patch appears to kludge a usable result. Would
yall look at this ASAP so that we can get the regression tester
back on solid ground?
r~
Index: objc-act.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/objc/objc-act.c,v
retrieving revision 1.97
diff -c -p -d -u -r1.97 objc-act.c
--- objc-act.c 2001/10/03 22:05:56 1.97
+++ objc-act.c 2001/10/12 01:30:07
@@ -8095,7 +8095,7 @@ finish_objc ()
if (objc_static_instances)
generate_static_references ();
- if (objc_implementation_context || class_names_chain
+ if (1 || objc_implementation_context || class_names_chain
|| meth_var_names_chain || meth_var_types_chain || sel_ref_chain)
generate_objc_symtab_decl ();