[Bug c++/99508] [11 Regression] Asm labels declared inside a function are ignored

2021-03-10 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99508

Richard Biener  changed:

   What|Removed |Added

   Priority|P3  |P1
  Known to work||10.2.1
Summary|Asm labels declared inside  |[11 Regression] Asm labels
   |a function are ignored  |declared inside a function
   ||are ignored
 Status|UNCONFIRMED |NEW
 Ever confirmed|0   |1
   Target Milestone|--- |11.0
   Keywords||wrong-code
   Last reconfirmed||2021-03-10
  Known to fail||11.0

--- Comment #1 from Richard Biener  ---
Confirmed.  Works with the C frontend.

[Bug c++/99508] [11 Regression] Asm labels declared inside a function are ignored

2021-03-10 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99508

Jakub Jelinek  changed:

   What|Removed |Added

 CC||jakub at gcc dot gnu.org,
   ||nathan at gcc dot gnu.org

--- Comment #2 from Jakub Jelinek  ---
This changed with r11-3699-g4e62aca0e0520e4ed2532f2d8153581190621c1a

[Bug c++/99508] [11 Regression] Asm labels declared inside a function are ignored

2021-03-10 Thread nathan at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99508

Nathan Sidwell  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |nathan at gcc dot 
gnu.org

--- Comment #3 from Nathan Sidwell  ---
Apparently copy_decl doesn't copy_decl :)

[Bug c++/99508] [11 Regression] Asm labels declared inside a function are ignored

2021-03-10 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99508

--- Comment #4 from CVS Commits  ---
The master branch has been updated by Nathan Sidwell :

https://gcc.gnu.org/g:b97af562b574697a4fff7fb8c69f579c01e70dec

commit r11-7605-gb97af562b574697a4fff7fb8c69f579c01e70dec
Author: Nathan Sidwell 
Date:   Wed Mar 10 07:39:51 2021 -0800

c++: Propagate assembler name from local-externs [PR 99508]

This is another place where our one-true-decl representation breaks
down.  The fix here propagates the assembly name to the ns-scope
alias.  that fixes the reported problem but changes the behaviour when
the user has explicitly declared the entity in its namespace.
However, we didn't handle that case 'correctly' anyway before.
Previously we'd also ignore the explicitly specified assembler name,
now we propagate it.  It's not clear to me what the desired semantics
would be in decorating just one of the local extern declarations this
way.  I don't think we can really do better without propagating this
aliasing property into the middle end (which is also needed for some
constexpr handling, see PR97306).  I tried that before and it turned
into a rat-hole.

PR c++/99508
gcc/cp/
* decl.c (make_rtl_for_nonlocal_decl): Propagate local-extern's
assembler name to the ns alias.
gcc/testsuite/
* g++.dg/ext/pr99508.C: New.

[Bug c++/99508] [11 Regression] Asm labels declared inside a function are ignored

2021-03-10 Thread nathan at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99508

Nathan Sidwell  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #5 from Nathan Sidwell  ---
b97af562b57 2021-03-10 | c++: Propagate assembler name from local-externs [PR
99508]

[Bug c++/99508] [11 Regression] Asm labels declared inside a function are ignored

2021-03-20 Thread frank.mehnert at googlemail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99508

--- Comment #6 from Frank Mehnert  ---
Fix confirmed. Thanks guys!