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

--- Comment #1 from Martin Liška <marxin at gcc dot gnu.org> ---
Confirmed, but for some reason hard to bisect. Stack overflow happens here:

#15 0x00000000007922d8 in value_dependent_expression_p (expression=<optimized
out>) at ../../gcc/cp/pt.c:24095
#16 0x0000000000792192 in value_dependent_expression_p (expression=<optimized
out>) at ../../gcc/cp/pt.c:23937
#17 0x0000000000791ce7 in value_dependent_expression_p (expression=<optimized
out>) at ../../gcc/cp/pt.c:24011
#18 0x0000000000791ce7 in value_dependent_expression_p (expression=<optimized
out>) at ../../gcc/cp/pt.c:24011
#19 0x0000000000792396 in value_dependent_expression_p (expression=<optimized
out>) at ../../gcc/cp/pt.c:24046
#20 0x00000000007922d8 in value_dependent_expression_p (expression=<optimized
out>) at ../../gcc/cp/pt.c:24095
#21 0x0000000000792192 in value_dependent_expression_p (expression=<optimized
out>) at ../../gcc/cp/pt.c:23937
#22 0x0000000000791ce7 in value_dependent_expression_p (expression=<optimized
out>) at ../../gcc/cp/pt.c:24011
#23 0x0000000000791ce7 in value_dependent_expression_p (expression=<optimized
out>) at ../../gcc/cp/pt.c:24011
#24 0x0000000000792396 in value_dependent_expression_p (expression=<optimized
out>) at ../../gcc/cp/pt.c:24046
#25 0x00000000007922d8 in value_dependent_expression_p (expression=<optimized
out>) at ../../gcc/cp/pt.c:24095
#26 0x0000000000792192 in value_dependent_expression_p (expression=<optimized
out>) at ../../gcc/cp/pt.c:23937
#27 0x00000000007949c9 in instantiation_dependent_expression_p
(expression=<optimized out>) at ../../gcc/cp/pt.c:24519
#28 0x0000000000650ca7 in is_nondependent_constant_expression
(t=0x7ffff697e7e0) at ../../gcc/cp/constexpr.c:5907
#29 0x0000000000651113 in fold_non_dependent_expr (t=t@entry=0x7ffff697e7e0) at
../../gcc/cp/constexpr.c:4933
#30 0x000000000078b712 in build_non_dependent_expr
(expr=expr@entry=0x7ffff697e7e0) at ../../gcc/cp/pt.c:24955
#31 0x00000000007fe848 in finish_expr_stmt (expr=expr@entry=0x7ffff697e7e0) at
../../gcc/cp/semantics.c:693
#32 0x000000000074a5f5 in cp_parser_expression_statement
(parser=parser@entry=0x7ffff7feccf0,
in_statement_expr=in_statement_expr@entry=0x0) at ../../gcc/cp/parser.c:11127
#33 0x0000000000751bd4 in cp_parser_statement
(parser=parser@entry=0x7ffff7feccf0,
in_statement_expr=in_statement_expr@entry=0x0, in_compound=<optimized out>,
in_compound@entry=true, if_p=if_p@entry=0x0, chain=chain@entry=0x0,
loc_after_labels=loc_after_labels@entry=0x0)
    at ../../gcc/cp/parser.c:10887
#34 0x0000000000752de1 in cp_parser_statement_seq_opt
(parser=parser@entry=0x7ffff7feccf0,
in_statement_expr=in_statement_expr@entry=0x0) at ../../gcc/cp/parser.c:11214
#35 0x0000000000752eb8 in cp_parser_compound_statement
(parser=parser@entry=0x7ffff7feccf0,
in_statement_expr=in_statement_expr@entry=0x0, bcs_flags=bcs_flags@entry=0,
function_body=function_body@entry=true) at ../../gcc/cp/parser.c:11168
#36 0x000000000076c719 in cp_parser_function_body (in_function_try_block=false,
parser=0x7ffff7feccf0) at ../../gcc/cp/parser.c:21622
#37 cp_parser_ctor_initializer_opt_and_function_body
(parser=parser@entry=0x7ffff7feccf0,
in_function_try_block=in_function_try_block@entry=false) at
../../gcc/cp/parser.c:21660
#38 0x000000000076e07b in cp_parser_function_definition_after_declarator
(parser=parser@entry=0x7ffff7feccf0, inline_p=inline_p@entry=false) at
../../gcc/cp/parser.c:26496
#39 0x000000000076ed5e in
cp_parser_function_definition_from_specifiers_and_declarator
(declarator=<optimized out>, attributes=0x0, decl_specifiers=0x7fffffffd610,
parser=0x7ffff7feccf0) at ../../gcc/cp/parser.c:26410
#40 cp_parser_init_declarator (parser=parser@entry=0x7ffff7feccf0,
decl_specifiers=decl_specifiers@entry=0x7fffffffd610, checks=checks@entry=0x0,
function_definition_allowed_p=function_definition_allowed_p@entry=true,
member_p=member_p@entry=false, 
    declares_class_or_enum=<optimized out>,
function_definition_p=0x7fffffffd60b, maybe_range_for_decl=0x0, init_loc=0x0,
auto_result=0x0) at ../../gcc/cp/parser.c:19374
#41 0x00000000007749fb in cp_parser_single_declaration
(parser=parser@entry=0x7ffff7feccf0, checks=checks@entry=0x0,
member_p=member_p@entry=false,
explicit_specialization_p=explicit_specialization_p@entry=false,
friend_p=friend_p@entry=0x7fffffffd6ef)
    at ../../gcc/cp/parser.c:26953
#42 0x0000000000774bed in cp_parser_template_declaration_after_parameters
(parser=parser@entry=0x7ffff7feccf0,
parameter_list=parameter_list@entry=0x7ffff69882e0,
member_p=member_p@entry=false) at ../../gcc/cp/parser.c:26556
#43 0x0000000000775577 in cp_parser_explicit_template_declaration
(member_p=false, parser=0x7ffff7feccf0) at ../../gcc/cp/parser.c:26792
#44 cp_parser_template_declaration_after_export
(parser=parser@entry=0x7ffff7feccf0, member_p=<optimized out>) at
../../gcc/cp/parser.c:26811
#45 0x0000000000775899 in cp_parser_template_declaration
(parser=parser@entry=0x7ffff7feccf0, member_p=member_p@entry=false) at
../../gcc/cp/parser.c:14899
#46 0x000000000077b8ba in cp_parser_declaration
(parser=parser@entry=0x7ffff7feccf0) at ../../gcc/cp/parser.c:12652
#47 0x000000000077bbec in cp_parser_declaration_seq_opt
(parser=parser@entry=0x7ffff7feccf0) at ../../gcc/cp/parser.c:12579
#48 0x000000000077befb in cp_parser_translation_unit (parser=0x7ffff7feccf0) at
../../gcc/cp/parser.c:4387
#49 c_parse_file () at ../../gcc/cp/parser.c:38799
#50 0x00000000008c3c47 in c_common_parse_file () at
../../gcc/c-family/c-opts.c:1106
#51 0x0000000000d9dd4f in compile_file () at ../../gcc/toplev.c:471
#52 0x00000000005f22f7 in do_compile () at ../../gcc/toplev.c:2037
#53 toplev::main (this=this@entry=0x7fffffffd92e, argc=<optimized out>,
argc@entry=15, argv=<optimized out>, argv@entry=0x7fffffffda28) at
../../gcc/toplev.c:2172
#54 0x00000000005f47db in main (argc=15, argv=0x7fffffffda28) at
../../gcc/main.c:39

Breakpoint 1, value_dependent_expression_p (expression=0x7ffff69753d8) at
../../gcc/cp/pt.c:23889
23889   {
(gdb) p print_generic_expr(stderr, expression, 0)
{.u=0}$11 = void
(gdb) c
Continuing.

Breakpoint 1, value_dependent_expression_p (expression=0x7ffff6833270) at
../../gcc/cp/pt.c:23889
23889   {
(gdb) p print_generic_expr(stderr, expression, 0)
0$12 = void
(gdb) c
Continuing.

Breakpoint 1, value_dependent_expression_p (expression=0x7ffff6988200) at
../../gcc/cp/pt.c:23889
23889   {
(gdb) p print_generic_expr(stderr, expression, 0)
&b.D.2295.u$13 = void
(gdb) c
Continuing.

Breakpoint 1, value_dependent_expression_p (expression=0x7ffff68129c0) at
../../gcc/cp/pt.c:23889
23889   {
(gdb) p print_generic_expr(stderr, expression, 0)
b.D.2295.u$14 = void
(gdb) c
Continuing.

Breakpoint 1, value_dependent_expression_p (expression=0x7ffff6812a50) at
../../gcc/cp/pt.c:23889
23889   {
(gdb) p print_generic_expr(stderr, expression, 0)
b.D.2295$15 = void
(gdb) c
Continuing.

Breakpoint 1, value_dependent_expression_p (expression=0x7ffff697e7e0) at
../../gcc/cp/pt.c:23889
23889   {
(gdb) p print_generic_expr(stderr, expression, 0)
b$16 = void
(gdb) c
Continuing.

Reply via email to