Regressions in objc/execute after latest ObjC patch

Ziemowit Laski zlaski@apple.com
Wed Oct 10 12:00:00 GMT 2001


Ok, I did get a chance to test this out under RH Linux 7.1.
Indeed, the objc/execute testsuite has the failures you
indicate when run against top-of-trunk, whereas the 3.0.1 branch
does not.  The failure manifests itself as follows, when you compile and 
then
attempt to run a test case:

./a.out: error while loading shared libraries: libgcc_s.so.1: cannot load
shared object file: No such file or directory

Per Stan's suggestion, I tried rebuilding the compiler with 
--disable-shared.
When I did this, the above message was replaced with a segmentation 
fault. :)

Since my patch did not have anything to do with shared library 
searching/loading
(indeed, the ObjC patch did not introduce any functional changes at 
all!), I
next tried rolling back the 3 files making up the patch:

   gcc/c-parse.in
   gcc/objc/objc-act.c
   gcc/objc/objc-act.h

and rebuilding the compiler.  THE FAILURES REMAIN.  Hence, I've 
tentatively
concluded that the latest ObjC patch is NOT responsible for the observed
regressions in objc/execute.  Instead, I suspect that some other change,
checked in at about the same time as the ObjC patch, may be responsible.
Has anyone touched anything related to libgcc or shared lib usage in the
last week or so?

Thanks,

--Zem


> On Monday, October 8, 2001, at 12:38 , Geoff Keating wrote:
>
>>
>> Hi Ziemowit,
>>
>> your patch
>>
>> +2001-10-03  Ziemowit Laski  <zlaski@apple.com>
>> +
>> +       * c-parse.in (objc_inherit_code, objc_pq_context,
>> +       objc_public_flag): Make static.
>> +       (objc_interface_context, objc_implementation_context,
>> +       objc_method_context, objc_ivar_chain, objc_ivar_context): Move
>> to
>> +       global tree array in objc/objc-act.[ch].
>> +       (methoddef): Remove unnecessary code.
>> +
>> +       * objc/objc-act.c: (hashed_attribute, hashed_entry,
>> imp_entry):
>> +       Hoist struct definitions to objc-act.h.
>> +       (nst_method_hash_list, cls_method_hash_list, imp_list,
>> imp_count,
>> +       cat_count): Place declaration in objc-act.h.
>> +       (objc_tree_index): Move enumeration to objc-act.h.
>> +       (objc_global_trees): Place declaration and macro accessors in
>> +       objc-act.h.
>> +       (implementation_context): Remove duplicate; use
>> +       objc_implementation_context instead:
>> +       (method_context): Remove duplicate; use objc_method_context
>> +       instead.
>> +       (objc_ellipsis_node, objc_method_prototype_template,
>> +       implemented_classes, function_type): Move global vars to
>> +       objc_global_trees.
>> +       (init_objc): Use LAST_BASE_TREE_CODE instead of LAST_CODE.
>> +       (build_message_expr): Move actual construction of ObjC message
>> +       send nodes to finish_message_expr.
>> +       (finish_message_expr): New routine, contains code formerly in
>> +       build_message_expr.
>> +       * objc/objc-act.h (finish_message_expr): New prototype.
>> +       (objc_ivar_chain, objc_method_context, objc_ellipsis_node):
>> Remove
>> +       declarations; these vars are now part of objc_global_trees.
>> +       (objc_tree_index, objc_global_trees): Move definitions from
>> +       objc-act.c.
>> +       * objc/objc-tree.def: Update copyright info.
>> +
>>
>> seemed to break objective-C on powerpc-eabisim (you'd know this
>> because you got a mail message from the automated tester) and on
>> x86-linux.  How are you doing at fixing the problem?
>>
>> --
>> - Geoffrey Keating <geoffk@geoffk.org>
>>
>>
--------------------------------------------------------------
Ziemowit Laski                   Apple Computer, Inc.
zlaski@apple.com                 2 Infinite Loop, MS 302-4SN
+1.408.974.6229  Fax .1344       Cupertino, CA  95014-2085
>



More information about the Gcc-patches mailing list