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

[Bug middle-end/66269] Issues with mixing strict aliasing (verify_type ICE with Ada)


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66269

Jan Hubicka <hubicka at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #3 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
This was fixed (well masked) by:
2015-11-24  Jan Hubicka  <hubicka@ucw.cz>

        * alias.c (get_alias_set): Before checking TYPE_ALIAS_SET_KNOWN_P
        double check that type is main variant.
        * tree.c (build_variant_type_copy): Clear TYPE_ALIAS_SET when producing
        variant.
        (verify_type_variant): Verify that variants have no
        TYPE_ALIAS_SET_KNOWN_P set
        * tree-streamer-out.c (pack_ts_type_common_value_fields): Reorder
        streaming so constant fields come first; stream TYPE_ALIAS_SET==0
        only for main variants; stream TYPE_ALIAS_SET as a bit.
        * tree-streamer-in.c (unpack_ts_type_common_value_fields): Update
        accordingly.

the underlying issue that -fstrict-aliasing does not work correctly across
different units or with optimization attribute remains.  I will open
independent bug for this. At least here was nothing Ada specific.

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