[cfe-commits] r82879 - in /cfe/trunk: lib/CodeGen/Mangle.cpp test/CodeGenCXX/mangle.cpp
Anders Carlsson
andersca at mac.com
Sat Sep 26 15:18:22 PDT 2009
Author: andersca
Date: Sat Sep 26 17:18:22 2009
New Revision: 82879
URL: http://llvm.org/viewvc/llvm-project?rev=82879&view=rev
Log:
Handle substitutions in mangleTemplatePrefix.
Modified:
cfe/trunk/lib/CodeGen/Mangle.cpp
cfe/trunk/test/CodeGenCXX/mangle.cpp
Modified: cfe/trunk/lib/CodeGen/Mangle.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/Mangle.cpp?rev=82879&r1=82878&r2=82879&view=diff
==============================================================================
--- cfe/trunk/lib/CodeGen/Mangle.cpp (original)
+++ cfe/trunk/lib/CodeGen/Mangle.cpp Sat Sep 26 17:18:22 2009
@@ -531,10 +531,15 @@
// ::= <template-param>
// ::= <substitution>
- // FIXME: <substitution> and <template-param>
+ if (mangleSubstitution(ND))
+ return;
+
+ // FIXME: <template-param>
manglePrefix(ND->getDeclContext());
mangleUnqualifiedName(ND->getTemplatedDecl());
+
+ addSubstitution(ND);
}
void
Modified: cfe/trunk/test/CodeGenCXX/mangle.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenCXX/mangle.cpp?rev=82879&r1=82878&r2=82879&view=diff
==============================================================================
--- cfe/trunk/test/CodeGenCXX/mangle.cpp (original)
+++ cfe/trunk/test/CodeGenCXX/mangle.cpp Sat Sep 26 17:18:22 2009
@@ -162,8 +162,7 @@
template<typename T> bool operator==(const A<T>&, const A<T>&) { return true; }
}
-// FIXME: This should be _ZN2NSeqIcEEbRK1AIT_ES5_
-// CHECK: @_ZN2NSeqIcEEbRK1AIT_ES4_
+// CHECK: @_ZN2NSeqIcEEbRK1AIT_ES5_
template bool NS::operator==(const ::A<char>&, const ::A<char>&);
namespace std {
More information about the cfe-commits
mailing list