summaryrefslogtreecommitdiffstats
path: root/clang/tools/libclang/CIndexUSRs.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2011-01-05 18:58:31 +0000
committerDouglas Gregor <dgregor@apple.com>2011-01-05 18:58:31 +0000
commite4ff4b56fe4bdc051af4ef808ebbbff129bfa804 (patch)
treef8681c6ca5e9ea651274587fb29a82ad0ab8e7b8 /clang/tools/libclang/CIndexUSRs.cpp
parentdc4e9637acf1d13ee931c6cb976dba8ffb70ffe6 (diff)
downloadbcm5719-llvm-e4ff4b56fe4bdc051af4ef808ebbbff129bfa804.tar.gz
bcm5719-llvm-e4ff4b56fe4bdc051af4ef808ebbbff129bfa804.zip
Replace the representation of template template argument pack
expansions with something that is easier to use correctly: a new template argment kind, rather than a bit on an existing kind. Update all of the switch statements that deal with template arguments, fixing a few latent bugs in the process. I"m happy with this representation, now. And, oh look! Template instantiation and deduction work for template template argument pack expansions. llvm-svn: 122896
Diffstat (limited to 'clang/tools/libclang/CIndexUSRs.cpp')
-rw-r--r--clang/tools/libclang/CIndexUSRs.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/clang/tools/libclang/CIndexUSRs.cpp b/clang/tools/libclang/CIndexUSRs.cpp
index c96dad5cd0f..8aed372be67 100644
--- a/clang/tools/libclang/CIndexUSRs.cpp
+++ b/clang/tools/libclang/CIndexUSRs.cpp
@@ -708,7 +708,9 @@ void USRGenerator::VisitTemplateArgument(const TemplateArgument &Arg) {
break;
case TemplateArgument::Template:
- VisitTemplateName(Arg.getAsTemplate());
+ case TemplateArgument::TemplateExpansion:
+ // FIXME: variadic templates
+ VisitTemplateName(Arg.getAsTemplateOrTemplatePattern());
break;
case TemplateArgument::Expression:
OpenPOWER on IntegriCloud