diff options
| author | Eric Liu <ioeric@google.com> | 2017-02-02 15:29:54 +0000 |
|---|---|---|
| committer | Eric Liu <ioeric@google.com> | 2017-02-02 15:29:54 +0000 |
| commit | ae7de7117a088f6ca6bd176f995c405b87f8cf1e (patch) | |
| tree | c294ba070e02a4fd2bca0285eae0a26955fd4b60 /clang-tools-extra/change-namespace/ChangeNamespace.cpp | |
| parent | 180bc5a02170cf5cc943555c718b246380817a55 (diff) | |
| download | bcm5719-llvm-ae7de7117a088f6ca6bd176f995c405b87f8cf1e.tar.gz bcm5719-llvm-ae7de7117a088f6ca6bd176f995c405b87f8cf1e.zip | |
[change-namespace] check using shadow decl correctly when shortening namespace specifiers.
Summary:
This fixes mismatch between template decls and template specialization decls.
Also added a few more test cases.
Reviewers: bkramer
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D29447
llvm-svn: 293897
Diffstat (limited to 'clang-tools-extra/change-namespace/ChangeNamespace.cpp')
| -rw-r--r-- | clang-tools-extra/change-namespace/ChangeNamespace.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/clang-tools-extra/change-namespace/ChangeNamespace.cpp b/clang-tools-extra/change-namespace/ChangeNamespace.cpp index 2f234da0887..728aa2b8bc2 100644 --- a/clang-tools-extra/change-namespace/ChangeNamespace.cpp +++ b/clang-tools-extra/change-namespace/ChangeNamespace.cpp @@ -761,7 +761,8 @@ void ChangeNamespaceTool::replaceQualifiedSymbolInDeclContext( if (isDeclVisibleAtLocation(*Result.SourceManager, Using, DeclCtx, Start)) { for (const auto *UsingShadow : Using->shadows()) { const auto *TargetDecl = UsingShadow->getTargetDecl(); - if (TargetDecl == FromDecl) { + if (TargetDecl->getQualifiedNameAsString() == + FromDecl->getQualifiedNameAsString()) { ReplaceName = FromDecl->getNameAsString(); Matched = true; break; |

