https://gcc.gnu.org/bugzilla/show_bug.cgi?id=46589
--- Comment #9 from Jonathan Wakely ---
This code was made ill-formed by https://wg21.link/p1766r1 (new in C++20 but a
DR against previous standards).
So GCC should just reject it (maybe with a switch to allow the old behaviour).
See PR 97475.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46589
H.J. Lu changed:
What|Removed |Added
CC||hjl.tools at gmail dot com
--- Comment #8 from
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46589
Kai Tietz changed:
What|Removed |Added
CC||ktietz at gcc dot gnu.org
--- Comment #7 from
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46589
--- Comment #6 from Jonathan Wakely 2010-11-22
08:47:42 UTC ---
(In reply to comment #4)
> This is exactly the same as my original submission, isn't it?
Yes sorry, I mixed up the first two code snippets with the code from main.cpp
and L0.cpp, bu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46589
Paolo Carlini changed:
What|Removed |Added
Status|RESOLVED|REOPENED
Last reconfirmed|
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46589
--- Comment #4 from TonyK 2010-11-22 00:19:18 UTC
---
(In reply to comment #3)
> There might still be a bug here, just not demonstrated very well by the
> original testcase. Here's a version where the definitions of S agree, but gcc
> still defi
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46589
--- Comment #3 from Jonathan Wakely 2010-11-21
23:14:45 UTC ---
There might still be a bug here, just not demonstrated very well by the
original testcase. Here's a version where the definitions of S agree, but gcc
still defines S::f as local and
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46589
Paolo Carlini changed:
What|Removed |Added
Status|UNCONFIRMED |RESOLVED
Resolution|
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46589
--- Comment #1 from Jonathan Wakely 2010-11-21
17:51:27 UTC ---
typedef struct { void G() ; } L ;
void L::G() { }
This is not the same type as L in main.cpp and the error is correct, L::G is
not defined
What you've defined is {unnamed type in L