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