]> granicus.if.org Git - clang/commit
Initial infrastructure for class template partial specialization. Here
authorDouglas Gregor <dgregor@apple.com>
Sun, 31 May 2009 09:31:02 +0000 (09:31 +0000)
committerDouglas Gregor <dgregor@apple.com>
Sun, 31 May 2009 09:31:02 +0000 (09:31 +0000)
commitc8ab2563ac8f7dcc4fdc518b5cc7015ecbb2f003
treef88bd5a5e94527a2040562782a00cab2e9d9bebe
parentf757ae711513e5b2efa25fde1562315c0906bd68
Initial infrastructure for class template partial specialization. Here
we have the basics of declaring and storing class template partial
specializations, matching class template partial specializations at
instantiation time via (limited) template argument deduction, and
using the class template partial specialization's pattern for
instantiation.

This patch is enough to make a simple is_pointer type trait work, but
not much else.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72662 91177308-0d34-0410-b5e6-96231b3b80d8
12 files changed:
include/clang/AST/DeclCXX.h
include/clang/AST/DeclNodes.def
include/clang/AST/DeclTemplate.h
include/clang/Basic/DiagnosticSemaKinds.td
lib/AST/DeclBase.cpp
lib/AST/DeclTemplate.cpp
lib/Sema/Sema.h
lib/Sema/SemaTemplate.cpp
lib/Sema/SemaTemplateInstantiate.cpp
test/SemaTemplate/class-template-spec.cpp
test/SemaTemplate/instantiation-default-1.cpp
test/SemaTemplate/temp_class_spec.cpp [new file with mode: 0644]