On 2015.08.31 at 16:44 +0200, Richard Biener wrote:
> 
> So the state below now will pass LTO bootstrap (fingers crossing,
> stage3 running) as well as regular bootstrap.  Iff I didn't break
> sth in the last minute.  You need up-to-date trunk (watch out,
> fortran seems to be broken) to pull the fixes for trunk LTO bootstrap.

Gold doesn't work at all (internal error in read_script_file, at 
script.cc:1608).

Even simple programs don't link anymore:

trippels@gcc2-power8 ~ % echo "int main () {}" | g++ -x c++ - -flto
/home/trippels/bin/ld: /home/trippels/tmp/ccPhF9Ar.o: plugin needed to handle 
lto object
/home/trippels/bin/ld: /home/trippels/tmp/ccjOv4bXdebugobj: plugin needed to 
handle lto object

And it breaks quickly during Firefox build, e.g.:

trippels@gcc2-power8 angle % cat glslang_lex.ii
struct A;
template <typename = int> class B {
  typedef A value_type;
  void m_fn1(const value_type &);
};
struct A {
  int staticUse;
B<> fields;
};

trippels@gcc2-power8 angle % g++ -g -c glslang_lex.ii
glslang_lex.ii: In instantiation of ‘class B<>’:
glslang_lex.ii:8:5:   required from here
glslang_lex.ii:2:33: error: TYPE_CANONICAL is not compatible
 template <typename = int> class B {
                                 ^
 <record_type 0x3fffa9d4cb70 A readonly type_5 VOID
    align 8 symtab 0 alias set -1 canonical type 0x3fffa9d4cb70 context 
<translation_unit_decl 0x3fffb2770078 D.1>
    full-name "const struct A"
    n_parents=0 use_template=0 interface-unknown reference_to_this 
<reference_type 0x3fffa9d4ccc0>>
 <record_type 0x3fffa9d4d3f8 value_type readonly used type_5 VOID
    align 8 symtab -1446640944 alias set -1 canonical type 0x3fffa9d4cb70
    fields <field_decl 0x3fffa9c44c00 staticUse
        type <integer_type 0x3fffa9b90690 int public type_6 SI
            size <integer_cst 0x3fffa9b416b0 constant 32>
            unit size <integer_cst 0x3fffa9b416c8 constant 4>
            align 32 symtab 0 alias set -1 canonical type 0x3fffa9b90690 
precision 32 min <integer_cst 0x3fffa9b41668 -2147483648> max <integer_cst 
0x3fffa9b41680 2147483647>
            pointer_to_this <pointer_type 0x3fffa9b917a0>>
        decl_3 VOID file glslang_lex.ii line 7 col 7
        align 1 offset_align 1 context <record_type 0x3fffa9d4c780 A>
        chain <type_decl 0x3fffa9c44b68 A type <record_type 0x3fffa9d4d158 A>
            nonlocal decl_4 VOID file glslang_lex.ii line 6 col 10
            align 1 context <record_type 0x3fffa9d4c780 A> result <record_type 
0x3fffa9d4c780 A>
           >> context <translation_unit_decl 0x3fffb2770078 D.1>
    full-name "const value_type"
    n_parents=0 use_template=0 interface-unknown reference_to_this 
<reference_type 0x3fffa9d4d4a0>>
glslang_lex.ii:2:33: internal compiler error: verify_type failed
0x10d74f97 verify_type(tree_node const*)
        ../../gcc/gcc/tree.c:13583
0x10633373 gen_type_die_with_usage
        ../../gcc/gcc/dwarf2out.c:20824
0x10633c17 gen_type_die_with_usage
        ../../gcc/gcc/dwarf2out.c:20922
0x10635347 gen_type_die
        ../../gcc/gcc/dwarf2out.c:21018
0x10635a43 gen_formal_types_die
        ../../gcc/gcc/dwarf2out.c:18564
0x10636843 gen_subprogram_die
        ../../gcc/gcc/dwarf2out.c:19341
0x10638067 gen_decl_die
        ../../gcc/gcc/dwarf2out.c:21668
0x1064fdd7 gen_member_die
        ../../gcc/gcc/dwarf2out.c:20516
0x1064fdd7 gen_struct_or_union_type_die
        ../../gcc/gcc/dwarf2out.c:20600
0x1064fdd7 gen_tagged_type_die
        ../../gcc/gcc/dwarf2out.c:20801
0x10633caf gen_type_die_with_usage
        ../../gcc/gcc/dwarf2out.c:20963
0x10635347 gen_type_die
        ../../gcc/gcc/dwarf2out.c:21018
0x10638443 gen_decl_die
        ../../gcc/gcc/dwarf2out.c:21691
0x106392ef dwarf2out_decl
        ../../gcc/gcc/dwarf2out.c:22161
0x10652bb7 dwarf2out_type_decl
        ../../gcc/gcc/dwarf2out.c:21871
0x1093143f rest_of_type_compilation(tree_node*, int)
        ../../gcc/gcc/passes.c:347
0x1028284b finish_struct_1(tree_node*)
        ../../gcc/gcc/cp/class.c:6747
0x1023f92f instantiate_class_template_1
        ../../gcc/gcc/cp/pt.c:10189
0x1023f92f instantiate_class_template(tree_node*)
        ../../gcc/gcc/cp/pt.c:10229
0x10316453 complete_type(tree_node*)
        ../../gcc/gcc/cp/typeck.c:138
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.


-- 
Markus

Reply via email to