Hi,
this patch fixes the second ICE exposed by the new testcase Marxin
added. Again the ODR warning needs work, so I commit it after getting
it right.
Bootstrapped/regtested x86_64-linux, comitted.
PR lto/87957
* ipa-devirt.c (free_enum_values): Do not ICE on ODR vilations.
Index:
Hi,
this patch fixes ICE in where ODR violation merge non-polymorphic and
polymorphic type.
I will keep the PR open as I would like to improve the ODR violation warning
Bootstrapped/regtested x86_64-linux, will commit it tomorrow.
Honza
PR ipa/65475
* ipa-devirt.c (add_type_dupl
Hi,
the two testcases show somewhat crazy layout of C++ object that goes
in order base1,base2,virtual_base_of_base1
this confuses the walk in get_binfo_at_offset while looking for
virtual_base_of_base1 to look into base2 instead of base1.
It seems that in the case of virtual inheritance we simply
Hi,
Firefox build ICEs in ipa-devirt (types_same_for_odr) not being able
to establish ODR equivalency for non-polymorphic types. This is because
ipa-prop and ipa-cp does call get_binfo_at_offset where it really wants
to propagate on types and offsets. Before this is fixed this patch avoids
the IC