summaryrefslogtreecommitdiffstats
path: root/clang/tools/libclang/CIndexUSRs.cpp
diff options
context:
space:
mode:
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>2011-10-18 16:50:06 +0000
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>2011-10-18 16:50:06 +0000
commit098c4eabd25972526a402c8ad0cb0dd9136ef9a6 (patch)
treea3b21031c9171fbfcc672ec0d2446072653762e9 /clang/tools/libclang/CIndexUSRs.cpp
parent09deffa06745ad1920bd36a0011a4eeacdaa7455 (diff)
downloadbcm5719-llvm-098c4eabd25972526a402c8ad0cb0dd9136ef9a6.tar.gz
bcm5719-llvm-098c4eabd25972526a402c8ad0cb0dd9136ef9a6.zip
[libclang] Since an objc extension semantically continues the interface of the class
don't use unique USRs for them, otherwise we fail to associate @implementation methods with the methods in extensions. llvm-svn: 142361
Diffstat (limited to 'clang/tools/libclang/CIndexUSRs.cpp')
-rw-r--r--clang/tools/libclang/CIndexUSRs.cpp6
1 files changed, 2 insertions, 4 deletions
diff --git a/clang/tools/libclang/CIndexUSRs.cpp b/clang/tools/libclang/CIndexUSRs.cpp
index 195463cbe28..f6e9aa358e2 100644
--- a/clang/tools/libclang/CIndexUSRs.cpp
+++ b/clang/tools/libclang/CIndexUSRs.cpp
@@ -336,11 +336,9 @@ void USRGenerator::VisitObjCContainerDecl(ObjCContainerDecl *D) {
IgnoreResults = true;
return;
}
- // Specially handle class extensions, which are anonymous categories.
- // We want to mangle in the location to uniquely distinguish them.
if (CD->IsClassExtension()) {
- Out << "objc(ext)" << ID->getName() << '@';
- GenLoc(CD);
+ // An extension semantically continues the interface of the class.
+ GenObjCClass(ID->getName());
}
else
GenObjCCategory(ID->getName(), CD->getName());
OpenPOWER on IntegriCloud