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

--- Comment #3 from Iain Sandoe <iains at gcc dot gnu.org> ---
(In reply to Jakub Jelinek from comment #1)
> Created attachment 64494 [details]
> gcc17-pr125376.patch
> 

>       if (lvname != NULL_TREE && lvd->nest_depth == 0)        buf =
> xasprintf ("%s", IDENTIFIER_POINTER (lvname));      else if (lvname !=
> NULL_TREE)        buf = xasprintf ("%s_%u_%u", IDENTIFIER_POINTER (lvname), 
> lvd->nest_depth, lvd->bind_indx);      else        buf = xasprintf
> ("_D%u_%u_%u", lvd->nest_depth, lvd->bind_indx,                        
> serial++);
> is really a bad idea.  While at least _Coro_* is in implementation
> namespace, though one can still define parameters like _Coro_q2___unnamed
> and get clashes,

as you noted the intention was to have some readily useable way to inspect
these in the debugger.  I suppose that wr need to add something to
disambiguate.

> the %s_%u_%u certainly is not in implementation namespace, one can have a

Hmm.. that looks like a messed up change; the xxx_n_m style of name used to be
prefixed by '__' to ensure it was in the implementation. namespace.

Reply via email to