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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|WAITING                     |NEW

--- Comment #2 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
(In reply to Martin Liška from comment #1)
> Can't reproduce Markus..

Strange. For me it segfaults both on X86_64 and ppc64le:

==6150== Command:
/home/trippels/gcc_test/usr/local/bin/../libexec/gcc/x86_64-pc-linux-gnu/8.0.0/cc1plus
-fpreprocessed test.ii -quiet -dumpbase test.ii -mtune=generic -march=x86-64
-auxbase test -o /home/trippels/tmp/cc4LK1Ym.s
==6150== 
==6150== Invalid read of size 8
==6150==    at 0x6BF81E: 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) (hash-table.h:878)
==6150==    by 0x6BF9CC: hash_map<tree_node*, tree_node*,
simple_hashmap_traits<default_hash_traits<tree_node*>, tree_node*>
>::put(tree_node* const&, tree_node* const&) (hash-map.h:137)
==6150==    by 0x80A102: register_local_specialization (pt.c:1906)
==6150==    by 0x80A102: tsubst_copy_and_build(tree_node*, tree_node*, int,
tree_node*, bool, bool) (pt.c:18153)
==6150==    by 0x807A8B: tsubst_copy_and_build(tree_node*, tree_node*, int,
tree_node*, bool, bool) (pt.c:17911)
==6150==    by 0x80A181: tsubst_copy_and_build(tree_node*, tree_node*, int,
tree_node*, bool, bool) (pt.c:17533)
==6150==    by 0x808562: tsubst_copy_and_build(tree_node*, tree_node*, int,
tree_node*, bool, bool) (pt.c:17070)
==6150==    by 0x8098EC: tsubst_copy_and_build(tree_node*, tree_node*, int,
tree_node*, bool, bool) (pt.c:17549)
==6150==    by 0x6BCAF3: fold_non_dependent_expr(tree_node*) (constexpr.c:4936)
==6150==    by 0x7F651F: build_non_dependent_expr(tree_node*) (pt.c:24955)
==6150==    by 0x866207: finish_expr_stmt(tree_node*) (semantics.c:693)
==6150==    by 0x7B4F11: cp_parser_expression_statement(cp_parser*, tree_node*)
(parser.c:11127)
==6150==    by 0x7C0E75: cp_parser_statement(cp_parser*, tree_node*, bool,
bool*, vec<tree_node*, va_heap, vl_ptr>*, unsigned int*) (parser.c:10887)
==6150==  Address 0x8 is not stack'd, malloc'd or (recently) free'd
==6150== 
test.ii: In lambda function:
test.ii:8:18: internal compiler error: Segmentation fault

Reply via email to