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

Martin Sebor <msebor at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2015-12-03
                 CC|                            |msebor at gcc dot gnu.org
     Ever confirmed|0                           |1
      Known to fail|                            |5.1.0, 5.2.1, 6.0

--- Comment #1 from Martin Sebor <msebor at gcc dot gnu.org> ---
Confirmed with both 5.1.0 and recent trunk.  The stack trace is below.  The
crash is in the tree check in the statement below:

  orig_visibility_specified = DECL_VISIBILITY_SPECIFIED (decl);

with the decl being:

 <template_decl 0x7ffff09d9400 operator[]
    type <method_type 0x7ffff09dd348
        type <integer_type 0x7ffff09d5000 u32 unsigned type_6 SI
            size <integer_cst 0x7ffff089c0a8 constant 32>
            unit size <integer_cst 0x7ffff089c0c0 constant 4>
            align 32 symtab 0 alias set -1 canonical type 0x7ffff087e888
precision 32 min <integer_cst 0x7ffff089c0d8 0> max <integer_cst 0x7ffff089c090
4294967295>
            pointer_to_this <pointer_type 0x7ffff09d5888>>
        type_0 type_6 QI
        size <integer_cst 0x7ffff087af48 constant 8>
        unit size <integer_cst 0x7ffff087af60 constant 1>
        align 8 symtab 0 alias set -1 canonical type 0x7ffff09dd498 method
basetype <record_type 0x7ffff09dba80 ._4>
        arg-types <tree_list 0x7ffff09d8668 value <pointer_type 0x7ffff09dd3f0>
            chain <tree_list 0x7ffff09d8618 value <template_type_parm
0x7ffff09dd000 IDX>
                chain <tree_list 0x7ffff088ec80 value <void_type 0x7ffff08a0150
void>>>>>
    public ignored decl_1 VOID file /build/tmp/c.cpp line 18 col 34
    align 1 context <record_type 0x7ffff09dba80 ._4>
    full-name "template<class IDX> u32 Hdr::<anonymous union>::<anonymous
struct>::operator[](IDX) const"
   >


$ /build/gcc-trunk-svn/gcc/xgcc -B /build/gcc-trunk-svn/gcc -S -Wall -o/dev/tty
c.cpp
        .file   "c.cpp"
c.cpp:34:3: internal compiler error: tree check: expected tree that contains
‘decl with visibility’ structure, have ‘template_decl’ in determine_visibility,
at cp/decl2.c:2281
 } Hdr;
   ^~~

0x13203d5 tree_contains_struct_check_failed(tree_node const*,
tree_node_structure_enum, char const*, int, char const*)
        /home/msebor/scm/fsf/gcc-svn/gcc/tree.c:9778
0x72ba12 contains_struct_check(tree_node*, tree_node_structure_enum, char
const*, int, char const*)
        /home/msebor/scm/fsf/gcc-svn/gcc/tree.h:3106
0x863d77 determine_visibility(tree_node*)
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/decl2.c:2281
0x86689a reset_decl_linkage
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/decl2.c:2655
0x866bda reset_type_linkage_2
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/decl2.c:2683
0x866ec0 bt_reset_linkage_2
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/decl2.c:2695
0x9abe2e binding_table_foreach(binding_table_s*, void (*)(binding_entry_s*,
void*), void*)
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/name-lookup.c:258
0x866e9a reset_type_linkage_2
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/decl2.c:2689
0x866ec0 bt_reset_linkage_2
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/decl2.c:2695
0x9abe2e binding_table_foreach(binding_table_s*, void (*)(binding_entry_s*,
void*), void*)
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/name-lookup.c:258
0x866e9a reset_type_linkage_2
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/decl2.c:2689
0x866ee6 reset_type_linkage(tree_node*)
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/decl2.c:2701
0x77ec81 grokdeclarator(cp_declarator const*, cp_decl_specifier_seq*,
decl_context, int, tree_node**)
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/decl.c:10700
0x76a90d start_decl(cp_declarator const*, cp_decl_specifier_seq*, int,
tree_node*, tree_node*, tree_node**)
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/decl.c:4788
0x8a4707 cp_parser_init_declarator
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/parser.c:18070
0x89a8d4 cp_parser_simple_declaration
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/parser.c:11980
0x89a6a6 cp_parser_block_declaration
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/parser.c:11854
0x89a429 cp_parser_declaration
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/parser.c:11751
0x899f5c cp_parser_declaration_seq_opt
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/parser.c:11630
0x88cbc0 cp_parser_translation_unit
        /home/msebor/scm/fsf/gcc-svn/gcc/cp/parser.c:4189
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.

Reply via email to