]> granicus.if.org Git - clang/commit
Instantiation for member classes of class templates. Note that only
authorDouglas Gregor <dgregor@apple.com>
Wed, 25 Mar 2009 21:17:03 +0000 (21:17 +0000)
committerDouglas Gregor <dgregor@apple.com>
Wed, 25 Mar 2009 21:17:03 +0000 (21:17 +0000)
commitd475b8d9e6f5ff0e6ab8d15667ce8a64c7cb9a4d
tree9e94affff617c4a7717084c00c8f14f431d73bd9
parent4fcb4cd6556cd783b2a8cd2b7266ae4696e605bb
Instantiation for member classes of class templates. Note that only
the declarations of member classes are instantiated when the owning
class template is instantiated. The definitions of such member classes
are instantiated when a complete type is required.

This change also introduces the injected-class-name into a class
template specialization.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67707 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/AST/DeclCXX.h
include/clang/Basic/DiagnosticSemaKinds.td
lib/AST/DeclCXX.cpp
lib/Sema/Sema.h
lib/Sema/SemaDecl.cpp
lib/Sema/SemaTemplateInstantiate.cpp
lib/Sema/SemaTemplateInstantiateDecl.cpp
lib/Sema/SemaType.cpp
test/SemaTemplate/instantiate-member-class.cpp [new file with mode: 0644]