[cfe-commits] r150264 - /cfe/trunk/tools/libclang/CIndexUSRs.cpp
Argyrios Kyrtzidis
akyrtzi at gmail.com
Fri Feb 10 12:10:32 PST 2012
Author: akirtzidis
Date: Fri Feb 10 14:10:32 2012
New Revision: 150264
URL: http://llvm.org/viewvc/llvm-project?rev=150264&view=rev
Log:
[libclang] Encode the template specialization parameters of a function
specialization in its USR string.
Modified:
cfe/trunk/tools/libclang/CIndexUSRs.cpp
Modified: cfe/trunk/tools/libclang/CIndexUSRs.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/libclang/CIndexUSRs.cpp?rev=150264&r1=150263&r2=150264&view=diff
==============================================================================
--- cfe/trunk/tools/libclang/CIndexUSRs.cpp (original)
+++ cfe/trunk/tools/libclang/CIndexUSRs.cpp Fri Feb 10 14:10:32 2012
@@ -197,6 +197,16 @@
if (!Ctx.getLangOptions().CPlusPlus || D->isExternC())
return;
+ if (const TemplateArgumentList *
+ SpecArgs = D->getTemplateSpecializationArgs()) {
+ Out << '<';
+ for (unsigned I = 0, N = SpecArgs->size(); I != N; ++I) {
+ Out << '#';
+ VisitTemplateArgument(SpecArgs->get(I));
+ }
+ Out << '>';
+ }
+
// Mangle in type information for the arguments.
for (FunctionDecl::param_iterator I = D->param_begin(), E = D->param_end();
I != E; ++I) {
More information about the cfe-commits
mailing list