coroutines: Fix for uses of structured binding [PR94701]
Structured binding makes use of the DECL_VALUE_EXPR fields in local variables. We need to recognise these and only amend the expression values, retaining the 'alias' value intact. gcc/cp/ChangeLog: 2020-04-27 Iain Sandoe <iain@sandoe.co.uk> PR c++/94701 * coroutines.cc (struct local_var_info): Add fields for static variables and those with DECL_VALUE_EXPR redirection. (transform_local_var_uses): Skip past typedefs and static vars and then account for redirected variables. (register_local_var_uses): Likewise. gcc/testsuite/ChangeLog: 2020-04-27 Iain Sandoe <iain@sandoe.co.uk> PR c++/94701 * g++.dg/coroutines/torture/local-var-06-structured-binding.C: New test.
Showing
Please
register
or
sign in
to comment