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

--- Comment #5 from Iain Sandoe <iains at gcc dot gnu.org> ---
I guess that maybe I missed something - since you evidently see an issue...

here are more notes on the intention:

 - the frame transform only happens at finish_function when all dependencies
are already resolved, the frame-name declarations are not pushed, and so are
not available to lookup anyway.

 - The frame var names starting with _Coro_ are needed if we want to inspect
thim in a debugger, since these are synthetic compiler-generated.  _Coro_qN_
correspond to the param copies qN as per the standard's description (I am still
not quite sure how a user param name can spoof this...)

 - with the exception of the ones starting with _Coro_ the frame names are just
a debugging convenience for the compiler-engineers; we represent the user's
original variables with a DECL_VALUE_EXPRESSION pointing to the frame entry,
and so the debugging entries should work accordingly.

- unnamed vars are mangled with _Duid and therefore should never conflict
unless we have a uid conflict.

However, the "_" case did not exist when this was implemented.

Reply via email to