This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug sanitizer/80168] [5/6/7 Regression] ICE in make_decl_rtl, at varasm.c:1311 w/ VLA and -fsanitize=address
- From: "jakub at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 24 Mar 2017 16:16:08 +0000
- Subject: [Bug sanitizer/80168] [5/6/7 Regression] ICE in make_decl_rtl, at varasm.c:1311 w/ VLA and -fsanitize=address
- Auto-submitted: auto-generated
- References: <bug-80168-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80168
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
Assignee|unassigned at gcc dot gnu.org |jakub at gcc dot gnu.org
--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 41047
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=41047&action=edit
gcc7-pr80168.patch
Untested fix. Various comments e.g. in get_bit_range assert that
DECL_BIT_FIELD_REPRESENTATIVE in a VLA structure is guaranteed by construction
to have the same DECL_FIELD_OFFSET, so even when during low gimple they are not
the same, we should be able to use the 3rd COMPONENT_REF arguments from the
original field and the DECL_FIELD_BIT_OFFSET difference should give the actual
start differences between the field and its representative.