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

--- Comment #6 from Martin Liška <marxin at gcc dot gnu.org> ---
(In reply to Iain Sandoe from comment #5)
> (In reply to Martin Liška from comment #4)
> > (In reply to Iain Sandoe from comment #3)
> > > thanks for the report.  The reduced testcase at c#2 doesn't fire for me 
> > > once
> > > pending updates are applied. However, the attached case preprocessed code
> > > does; I think we will be able to make suitable test-cases, once the 
> > > analysis
> > > is done.
> > 
> > If you point me to the pending patches, I can make reduction based on that?
> 
> (the reduction is not urgent, I've an idea about the problem, hopefully have
> a few cycles on it tomorrow)
> 
> unreviewed:
> https://gcc.gnu.org/pipermail/gcc-patches/2020-March/542407.html
> review-in-progress:
> https://gcc.gnu.org/pipermail/gcc-patches/2020-March/542411.html
> 
> (but thanks for the offer!)

I've just applied both patches and I can still confirm that I see the failure:

$ g++ -c pr94288-reduced.cc -fcoroutines  -std=c++20
pr94288-reduced.cc: In function ‘void _Z3foov.actor(foo()::_Z3foov.frame*)’:
pr94288-reduced.cc:34:3: internal compiler error: in fold_convert_loc, at
fold-const.c:2435
   34 | D foo() { co_await foo(); }
      |   ^~~
0x747db2 fold_convert_loc(unsigned int, tree_node*, tree_node*)
        ../../gcc/fold-const.c:2435
0xdecd37 gimple_boolify(tree_node*)
        ../../gcc/gimplify.c:3960
0xdf52c8 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc/gimplify.c:13632
0xdf2d07 gimplify_modify_expr
        ../../gcc/gimplify.c:5766
0xdf4eb8 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc/gimplify.c:13602
0xdf8996 gimplify_stmt(tree_node**, gimple**)
        ../../gcc/gimplify.c:6823
0xdf5f39 gimplify_cleanup_point_expr
        ../../gcc/gimplify.c:6565
0xdf5f39 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc/gimplify.c:13994
0xdfc41d gimplify_cond_expr
        ../../gcc/gimplify.c:4177
0xdf5260 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc/gimplify.c:13559
0xdf8996 gimplify_stmt(tree_node**, gimple**)
        ../../gcc/gimplify.c:6823
0xdf6ab3 gimplify_statement_list
        ../../gcc/gimplify.c:1869
0xdf6ab3 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc/gimplify.c:14046
0xdf8996 gimplify_stmt(tree_node**, gimple**)
        ../../gcc/gimplify.c:6823
0xdf6ab3 gimplify_statement_list
        ../../gcc/gimplify.c:1869
0xdf6ab3 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc/gimplify.c:14046
0xdf8996 gimplify_stmt(tree_node**, gimple**)
        ../../gcc/gimplify.c:6823
0xdf4f1c gimplify_and_add(tree_node*, gimple**)
        ../../gcc/gimplify.c:486
0xdf4f1c gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc/gimplify.c:13953
0xdf8996 gimplify_stmt(tree_node**, gimple**)
        ../../gcc/gimplify.c:6823
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

Reply via email to