diff options
author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2012-12-07 22:41:46 +0000 |
---|---|---|
committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2012-12-07 22:41:46 +0000 |
commit | 23de34d6d6bf3b4d79ab5df3b8da22f948aaf306 (patch) | |
tree | 5070a42dac7481844e593775978855b8576a3417 /clang/tools/libclang/CIndexUSRs.cpp | |
parent | 5aa36def74d1ced757b5ca6f4635b4aeadc7a52e (diff) | |
download | bcm5719-llvm-23de34d6d6bf3b4d79ab5df3b8da22f948aaf306.tar.gz bcm5719-llvm-23de34d6d6bf3b4d79ab5df3b8da22f948aaf306.zip |
[libclang] Declarations inside anonymous namespaces have internal linkage so
their USR should contain a location.
This uniques them from other declarations with the same name but in different translation units.
rdar://10546541
llvm-svn: 169647
Diffstat (limited to 'clang/tools/libclang/CIndexUSRs.cpp')
-rw-r--r-- | clang/tools/libclang/CIndexUSRs.cpp | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/clang/tools/libclang/CIndexUSRs.cpp b/clang/tools/libclang/CIndexUSRs.cpp index 61400327295..b76363e3248 100644 --- a/clang/tools/libclang/CIndexUSRs.cpp +++ b/clang/tools/libclang/CIndexUSRs.cpp @@ -151,14 +151,8 @@ bool USRGenerator::EmitDeclName(const NamedDecl *D) { return startSize == endSize; } -static bool InAnonymousNamespace(const Decl *D) { - if (const NamespaceDecl *ND = dyn_cast<NamespaceDecl>(D->getDeclContext())) - return ND->isAnonymousNamespace(); - return false; -} - static inline bool ShouldGenerateLocation(const NamedDecl *D) { - return D->getLinkage() != ExternalLinkage && !InAnonymousNamespace(D); + return D->getLinkage() != ExternalLinkage; } void USRGenerator::VisitDeclContext(DeclContext *DC) { |