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.