[LLVMbugs] [Bug 15012] specialization in different namespace

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Mon Jan 21 19:46:55 PST 2013


Douglas Gregor <dgregor at apple.com> changed:

           What    |Removed                     |Added
             Status|NEW                         |RESOLVED
         Resolution|                            |INVALID

--- Comment #1 from Douglas Gregor <dgregor at apple.com> 2013-01-21 21:46:55 CST ---
C++11 14.5.5 [temp.class.spec]p5:
  A class template partial specialization may be declared or redeclared in any
namespace scope in which its
definition may be defined (14.5.1 and 14.5.2). 

(It's 14.5.5p6 in C++98/03)

Of course, those paragraphs aren't actually that useful. The general rule here
is C++ 8.3 [dcl.meaning]p1, which differs between C++98/03 (which forbids
(partial) specializations from outside the namespace *unless* they were first
declared in the namespace) and C++11 (which allows (partial) specializations
from outside the namespace always). GCC is apparently not implementing the
C++11 tweak to these rules yet.

Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

More information about the llvm-bugs mailing list