> > I bootstrapped/regtested on x86_64-linux the patch bellow. If it will work
> > for Firefox and Chrome I will go ahead with it at least temporarily.
> 
> Really?  This introduced a LTO failure in the gnat.dg testsuite:
> 
> FAIL: gnat.dg/lto8.adb (internal compiler error)
> FAIL: gnat.dg/lto8.adb (test for excess errors)
> WARNING: gnat.dg/lto8.adb compilation failed to produce executable
> 
> lto1: internal compiler error: in odr_types_equivalent_p, at ipa-devirt.c:1276
> 0x86a263 odr_types_equivalent_p
>       /home/eric/svn/gcc/gcc/ipa-devirt.c:1276
> 0x86bf44 odr_types_equivalent_p(tree_node*, tree_node*)
>       /home/eric/svn/gcc/gcc/ipa-devirt.c:1718
> 0x5c563a warn_type_compatibility_p
>       /home/eric/svn/gcc/gcc/lto/lto-symtab.c:219

Hmm, ICE here means that we think the global symbols are defined by a type in 
anonymous
namespace.  We really need to solve the problem of reliably identifying these
https://gcc.gnu.org/ml/gcc-patches/2015-05/msg01245.html
It is not at all that hard to do it, we just need to decide on the 
representation.

I will take a look if I can improve type_in_anonymous_namepsace somehow.  So Ada
produces TYPE_DECL with DECL_ABSTRACT that do have TYPE_STUB_DECL with 
TREE_PUBLIC
NULL I suppose.

Honza

> 0x5c6103 lto_symtab_merge
>       /home/eric/svn/gcc/gcc/lto/lto-symtab.c:336
> 0x5c6103 lto_symtab_merge_decls_2
>       /home/eric/svn/gcc/gcc/lto/lto-symtab.c:520
> 0x5c6103 lto_symtab_merge_decls_1
>       /home/eric/svn/gcc/gcc/lto/lto-symtab.c:671
> 0x5c6103 lto_symtab_merge_decls()
>       /home/eric/svn/gcc/gcc/lto/lto-symtab.c:694
> 0x5bb9cc read_cgraph_and_symbols
>       /home/eric/svn/gcc/gcc/lto/lto.c:2891
> 0x5bb9cc lto_main()
>       /home/eric/svn/gcc/gcc/lto/lto.c:3277
> 
> -- 
> Eric Botcazou

Reply via email to