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

            Bug ID: 82069
           Summary: [8 Regression] ICE: Segmentation fault
           Product: gcc
           Version: 8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: trippels at gcc dot gnu.org
                CC: jason at gcc dot gnu.org
  Target Milestone: ---

More r251433 outfall:

trippels@gcc2-power8 llvm_build % cat MapFile.ii
template <typename T> struct A { T operator[](int); };
void toString();
namespace lld {
void toString(int);
}
using namespace lld;
template <class> void getSymbolStrings(A<int *> Syms) {
  [&] { toString(*Syms[0]); };
}

trippels@gcc2-power8 llvm_build % g++ -c MapFile.ii
MapFile.ii: In lambda function:
MapFile.ii:8:18: internal compiler error: Segmentation fault
   [&] { toString(*Syms[0]); };
0x10bc9783 crash_signal
        ../../gcc/gcc/toplev.c:341
0x1027fed4 hash_table<hash_map<tree_node*, tree_node*,
simple_hashmap_traits<default_hash_traits<tree_node*>, tree_node*>
>::hash_entry, xcallocator>::find_slot_with_hash(tree_node* const&, unsigned
int, insert_option)
        ../../gcc/gcc/hash-table.h:878
0x10280193 hash_map<tree_node*, tree_node*,
simple_hashmap_traits<default_hash_traits<tree_node*>, tree_node*>
>::put(tree_node* const&, tree_node* const&)
        ../../gcc/gcc/hash-map.h:137
0x10429847 register_local_specialization(tree_node*, tree_node*)
        ../../gcc/gcc/cp/pt.c:1906
0x10429847 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        ../../gcc/gcc/cp/pt.c:18153
0x1042890f tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        ../../gcc/gcc/cp/pt.c:17911
0x1042990f tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        ../../gcc/gcc/cp/pt.c:17533
0x10427aa7 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        ../../gcc/gcc/cp/pt.c:17070
0x10428edf tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        ../../gcc/gcc/cp/pt.c:17549
0x1027e32b fold_non_dependent_expr(tree_node*)
        ../../gcc/gcc/cp/constexpr.c:4936
0x1040cc0b build_non_dependent_expr(tree_node*)
        ../../gcc/gcc/cp/pt.c:24955
0x10495f1b finish_expr_stmt(tree_node*)
        ../../gcc/gcc/cp/semantics.c:693
0x103baa07 cp_parser_expression_statement
        ../../gcc/gcc/cp/parser.c:11127
0x103c899f cp_parser_statement
        ../../gcc/gcc/cp/parser.c:10887
0x103c9d03 cp_parser_statement_seq_opt
        ../../gcc/gcc/cp/parser.c:11214
0x103caa67 cp_parser_lambda_body
        ../../gcc/gcc/cp/parser.c:10624
0x103caa67 cp_parser_lambda_expression
        ../../gcc/gcc/cp/parser.c:10079
0x103cba0b cp_parser_primary_expression
        ../../gcc/gcc/cp/parser.c:5085
0x103ce58f cp_parser_postfix_expression
        ../../gcc/gcc/cp/parser.c:6907
0x103eebbf cp_parser_unary_expression
        ../../gcc/gcc/cp/parser.c:8248

Reply via email to