This is the mail archive of the gcc-patches@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]

Re: PATCH: Fix for long-standing ObjC bitfield "promotion" problem


Ziemowit Laski wrote:

2002-08-18  Ziemowit Laski  <zlaski@apple.com>

        * objc/objc-act.c (build_ivar_chain): Remove.
        (objc_copy_list): Likewise.
        (get_class_ivars): Inline call to removed build_ivar_chain
        function.  Save off a clean copy of ivars in the CLASS_OWN_IVARS
        slot; use that slot (rather than CLASS_IVARS) when accessing
        ivars for base classes.  Call copy_list and chainon instead of
        objc_copy_list.
        (build_private_template): Call get_class_ivars instead of
        build_ivar_chain.
        (start_class): Allocate room for the CLASS_OWN_IVARS slot.
        (continue_class): Call get_class_ivars instead of
        build_ivar_chain.
        (encode_field_decl): Check for DECL_BIT_FIELD_TYPE instead
        of DECL_BIT_FIELD (which may have been cleared).
        * objc/objc-act.h (CLASS_OWN_IVARS): New accessor macro.

[gcc/testsuite/ChangeLog]

2002-08-18  Ziemowit Laski  <zlaski@apple.com>

        * objc.dg/bitfield-1.m: New test.
        * objc.dg/bitfield-2.m: New test.
This is all OK for the trunk, thanks. I think it might be hard to write portable
tests for the GNU runtime encoding in its current state, because it uses some
not-quite-legitimate macros from the compiler's backend.

Stan




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