diff options
author | Douglas Gregor <dgregor@apple.com> | 2010-03-08 14:59:44 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2010-03-08 14:59:44 +0000 |
commit | 4bc1cb6aa635a5bf8fae99bf69c56c724c1e786c (patch) | |
tree | 0edb8f90c13b29d2ee1e9ad4faf1420616d3684f /tools/CIndex/CIndex.cpp | |
parent | a48b2846153dc1f6c35f9e8812975a661ab1bc79 (diff) |
Keep track of type source information in the return type of an
Objective-C method declaration, e.g., for
- (Foo *)myMethod;
we now have TypeSourceInfo for the Foo*.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97942 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/CIndex/CIndex.cpp')
-rw-r--r-- | tools/CIndex/CIndex.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/tools/CIndex/CIndex.cpp b/tools/CIndex/CIndex.cpp index 07bb7fbd83..4ae2f80606 100644 --- a/tools/CIndex/CIndex.cpp +++ b/tools/CIndex/CIndex.cpp @@ -532,9 +532,10 @@ bool CursorVisitor::VisitVarDecl(VarDecl *D) { } bool CursorVisitor::VisitObjCMethodDecl(ObjCMethodDecl *ND) { - // FIXME: We really need a TypeLoc covering Objective-C method declarations. - // At the moment, we don't have information about locations in the return - // type. + if (TypeSourceInfo *TSInfo = ND->getResultTypeSourceInfo()) + if (Visit(TSInfo->getTypeLoc())) + return true; + for (ObjCMethodDecl::param_iterator P = ND->param_begin(), PEnd = ND->param_end(); P != PEnd; ++P) { |