diff options
author | Fariborz Jahanian <fjahanian@apple.com> | 2010-06-30 18:27:47 +0000 |
---|---|---|
committer | Fariborz Jahanian <fjahanian@apple.com> | 2010-06-30 18:27:47 +0000 |
commit | 0f19afb9d4956cafe242d2eb6b309720c8738ddd (patch) | |
tree | bdc7cad021447734d2f1a269355b7c635dada7cd /clang/lib/CodeGen/Mangle.cpp | |
parent | c39d3497c84c2ad9d377eaa6ebeb4d2d0f7a16ab (diff) | |
download | bcm5719-llvm-0f19afb9d4956cafe242d2eb6b309720c8738ddd.tar.gz bcm5719-llvm-0f19afb9d4956cafe242d2eb6b309720c8738ddd.zip |
extern variable declared locally to objective-c++ method
should not be mangled either. Fixes radar 8016412.
llvm-svn: 107303
Diffstat (limited to 'clang/lib/CodeGen/Mangle.cpp')
-rw-r--r-- | clang/lib/CodeGen/Mangle.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/Mangle.cpp b/clang/lib/CodeGen/Mangle.cpp index ac962247fd0..4d755ce9575 100644 --- a/clang/lib/CodeGen/Mangle.cpp +++ b/clang/lib/CodeGen/Mangle.cpp @@ -294,7 +294,7 @@ bool MangleContext::shouldMangleDeclName(const NamedDecl *D) { if (!FD) { const DeclContext *DC = D->getDeclContext(); // Check for extern variable declared locally. - if (isa<FunctionDecl>(DC) && D->hasLinkage()) + if ((isa<FunctionDecl>(DC) || isa<ObjCMethodDecl>(DC) ) && D->hasLinkage()) while (!DC->isNamespace() && !DC->isTranslationUnit()) DC = DC->getParent(); if (DC->isTranslationUnit() && D->getLinkage() != InternalLinkage) |