summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST/ItaniumMangle.cpp
diff options
context:
space:
mode:
authorJohn McCall <rjmccall@apple.com>2011-04-24 08:43:07 +0000
committerJohn McCall <rjmccall@apple.com>2011-04-24 08:43:07 +0000
commit617339e6923d8ca0536cc819c3c665a5799790cc (patch)
tree732452b8ab17d3058946d2d1126041b9595381c6 /clang/lib/AST/ItaniumMangle.cpp
parent6dc0a2b4677c6c913585d2ce4d8f05359c975c36 (diff)
downloadbcm5719-llvm-617339e6923d8ca0536cc819c3c665a5799790cc.tar.gz
bcm5719-llvm-617339e6923d8ca0536cc819c3c665a5799790cc.zip
GCC seems to create address-of expression manglings when passing *any*
function as a template argument where a pointer to function is wanted. Just extend the existing hack. llvm-svn: 130084
Diffstat (limited to 'clang/lib/AST/ItaniumMangle.cpp')
-rw-r--r--clang/lib/AST/ItaniumMangle.cpp3
1 files changed, 1 insertions, 2 deletions
diff --git a/clang/lib/AST/ItaniumMangle.cpp b/clang/lib/AST/ItaniumMangle.cpp
index 57e955de868..a32b0ef7512 100644
--- a/clang/lib/AST/ItaniumMangle.cpp
+++ b/clang/lib/AST/ItaniumMangle.cpp
@@ -2458,8 +2458,7 @@ void CXXNameMangler::mangleTemplateArg(const NamedDecl *P,
// an expression. We compensate for it here to produce the correct mangling.
NamedDecl *D = cast<NamedDecl>(A.getAsDecl());
const NonTypeTemplateParmDecl *Parameter = cast<NonTypeTemplateParmDecl>(P);
- bool compensateMangling = D->isCXXClassMember() &&
- !Parameter->getType()->isReferenceType();
+ bool compensateMangling = !Parameter->getType()->isReferenceType();
if (compensateMangling) {
Out << 'X';
mangleOperatorName(OO_Amp, 1);
OpenPOWER on IntegriCloud