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

John Eivind Helset <jehelset at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jehelset at gmail dot com

--- Comment #9 from John Eivind Helset <jehelset at gmail dot com> ---
Hit this as well on master (9d5c500c4fa) in something like `co_return co_await
f(a, b ? c : d);`, if I lift the conditional out of await it seems ok.

0x2af0211 internal_error(char const*, ...)
        ../../gcc/diagnostic-global-context.cc:491
0xb4e45d fancy_abort(char const*, int, char const*)
        ../../gcc/diagnostic.cc:1772
0x79bd3b flatten_await_stmt
        ../../gcc/cp/coroutines.cc:3097
0xbdcc14 flatten_await_stmt
        ../../gcc/cp/coroutines.cc:3126
0xbdcc14 flatten_await_stmt
        ../../gcc/cp/coroutines.cc:3126
0xbdcc14 flatten_await_stmt
        ../../gcc/cp/coroutines.cc:3126
0xbde478 maybe_promote_temps
        ../../gcc/cp/coroutines.cc:3309
0xbde478 await_statement_walker
        ../../gcc/cp/coroutines.cc:3948
0x19c6754 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
        ../../gcc/tree.cc:11479
0xbde138 await_statement_walker
        ../../gcc/cp/coroutines.cc:3619
0x19c6754 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
        ../../gcc/tree.cc:11479
0xbde984 await_statement_walker
        ../../gcc/cp/coroutines.cc:3896
0x19c6754 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
        ../../gcc/tree.cc:11479
0xbde138 await_statement_walker
        ../../gcc/cp/coroutines.cc:3619
0x19c6754 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
        ../../gcc/tree.cc:11479
0xbde642 await_statement_walker
        ../../gcc/cp/coroutines.cc:3608
0x19c6754 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
        ../../gcc/tree.cc:11479
0x19c68ac walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
        ../../gcc/tree.cc:11713
0xbde642 await_statement_walker
        ../../gcc/cp/coroutines.cc:3608
0x19c6754 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
        ../../gcc/tree.cc:11479

Reply via email to