https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95873
Bug ID: 95873 Summary: Duplicated warning message "'class' tag used in naming 'union a'" Product: gcc Version: 11.0 Status: UNCONFIRMED Keywords: diagnostic Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: haoxintu at gmail dot com CC: mpolacek at gcc dot gnu.org Target Milestone: --- This code, bug.cc, GCC emits two duplicated warning messages. $cat bug.cc union a{}; auto var = new (typename :: a ); $g++ -c -fpermissive bug.cc bug.cc:2:29: warning: 'class' tag used in naming 'union a' [-fpermissive] 2 | auto var = new (typename :: a ); | ^ bug.cc:1:7: note: 'union a' was previously declared here 1 | union a{}; | ^ bug.cc:2:29: warning: 'class' tag used in naming 'union a' [-fpermissive] 2 | auto var = new (typename :: a ); | ^ bug.cc:1:7: note: 'union a' was previously declared here 1 | union a{}; | ^ All GCC-6 to GCC-trunk versions have this issue.