[Bug c++/37256] extern template / explicit instantiation broken in 4.4.0-pre

2008-08-27 Thread paolo dot carlini at oracle dot com


--- Comment #1 from paolo dot carlini at oracle dot com  2008-08-27 16:33 
---
Just a clarification about the broken this, broken that way of putting
things: G++ started providing the extern template syntax *many*, and I mean it,
*many* years ago, well before the standardization in C++0x. AFAICS, this
testcase never linked. Thus, if anything, it's just that now, with C++0x, we
have a divergence between the behavior of extern template as a G++ extension
and its behavior as mandated by n2723. Nothing can be broken.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37256



[Bug c++/37256] extern template / explicit instantiation broken in 4.4.0-pre

2008-08-27 Thread sebor at roguewave dot com


--- Comment #2 from sebor at roguewave dot com  2008-08-27 16:48 ---
Is this by any chance related to bug 24511?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37256



[Bug c++/37256] extern template / explicit instantiation broken in 4.4.0-pre

2008-08-27 Thread paolo dot carlini at oracle dot com


--- Comment #3 from paolo dot carlini at oracle dot com  2008-08-27 16:53 
---
Maybe you right Martin, I don't have at hand anything older than 4.0.4 ;)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37256



[Bug c++/37256] extern template / explicit instantiation broken in 4.4.0-pre

2008-08-27 Thread ciaran dot mccreesh at googlemail dot com


--- Comment #4 from ciaran dot mccreesh at googlemail dot com  2008-08-27 
17:07 ---
I don't expect it to link. I do expect it to compile. In real code I would of
course have struct B in a header and template class Bint; in a different
source file.

So far as I can see this is a change in behaviour in 4.4 that goes against both
the draft standard and how the GCC extension used to work, and which makes
'extern template' effectively useless.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37256



[Bug c++/37256] extern template / explicit instantiation broken in 4.4.0-pre

2008-08-27 Thread paolo dot carlini at oracle dot com


--- Comment #5 from paolo dot carlini at oracle dot com  2008-08-27 17:17 
---
Ok, *your* issue is about current mainline only, and only -O and above. Let's
CC Jason...


-- 

paolo dot carlini at oracle dot com changed:

   What|Removed |Added

 CC||jason at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37256