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

Markus Trippelsdorf <trippels at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2015-10-27
                 CC|                            |trippels at gcc dot gnu.org
          Component|c++                         |middle-end
            Summary|ice in add_expr, at         |[6 Regression] ice in
                   |tree.c:7840                 |add_expr, at tree.c:7840
     Ever confirmed|0                           |1

--- Comment #1 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
markus@x4 tmp % cat bug239.cc
class Visitor {
  void visitWinDeclSpec();
  typedef void (Visitor::*visitor_fun_ptr)(int);
  static visitor_fun_ptr b[];
};
Visitor::visitor_fun_ptr Visitor::b[]{
    visitor_fun_ptr(&Visitor::visitWinDeclSpec)};

markus@x4 tmp % g++ -c -O2 bug239.cc
bug239.cc: In function ‘void __static_initialization_and_destruction_0(int,
int)’:
bug239.cc:6:26: internal compiler error: in add_expr, at tree.c:7840
 Visitor::visitor_fun_ptr Visitor::b[]{
                          ^
0xf27703 inchash::add_expr(tree_node const*, inchash::hash&)
        ../../gcc/gcc/tree.c:7840
0xf2748f inchash::add_expr(tree_node const*, inchash::hash&)
        ../../gcc/gcc/tree.c:7852
0xf271bb inchash::add_expr(tree_node const*, inchash::hash&)
        ../../gcc/gcc/tree.c:7813
0xa8df71 iterative_hash_expr
        ../../gcc/gcc/tree.h:4610
0xa8df71 gimplify_hasher::hash(gimple_temp_hash_elt const*)
        ../../gcc/gcc/gimplify.c:10614
0xa8df71 hash_table<gimplify_hasher,
xcallocator>::find_slot(gimple_temp_hash_elt* const&, insert_option)
        ../../gcc/gcc/hash-table.h:408
0xa8df71 lookup_tmp_var
        ../../gcc/gcc/gimplify.c:513
0xa8df71 internal_get_tmp_var
        ../../gcc/gcc/gimplify.c:548
0xa86b0f gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc/gcc/gimplify.c:10059
0xa94240 gimplify_modify_expr
        ../../gcc/gcc/gimplify.c:4644
0xa8794e gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc/gcc/gimplify.c:9126
0xa8baa6 gimplify_stmt(tree_node**, gimple**)
        ../../gcc/gcc/gimplify.c:5551
0xa87d6d gimplify_cleanup_point_expr
        ../../gcc/gcc/gimplify.c:5327
0xa87d6d gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc/gcc/gimplify.c:9489
0xa8baa6 gimplify_stmt(tree_node**, gimple**)
        ../../gcc/gcc/gimplify.c:5551
0xa8823b gimplify_statement_list
        ../../gcc/gcc/gimplify.c:1474
0xa8823b gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc/gcc/gimplify.c:9541
0xa8baa6 gimplify_stmt(tree_node**, gimple**)
        ../../gcc/gcc/gimplify.c:5551
0xa902d2 gimplify_cond_expr
        ../../gcc/gcc/gimplify.c:3173
0xa87bb6 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc/gcc/gimplify.c:9082

Reply via email to