diff options
author | Fariborz Jahanian <fjahanian@apple.com> | 2010-06-22 23:20:40 +0000 |
---|---|---|
committer | Fariborz Jahanian <fjahanian@apple.com> | 2010-06-22 23:20:40 +0000 |
commit | 3bf0ded346b3b8fdc62d208661b869d6122586df (patch) | |
tree | 1b735ed2d4da4a54932281d6b4b60fc64600c51b /clang/lib/Sema/SemaCodeComplete.cpp | |
parent | c646d130548a032cdcc932487e981f3a242d6d91 (diff) | |
download | bcm5719-llvm-3bf0ded346b3b8fdc62d208661b869d6122586df.tar.gz bcm5719-llvm-3bf0ded346b3b8fdc62d208661b869d6122586df.zip |
Patch to provide separate ASTs for multiple ObjC class extension
declarations (implements radar 7928731).
llvm-svn: 106597
Diffstat (limited to 'clang/lib/Sema/SemaCodeComplete.cpp')
-rw-r--r-- | clang/lib/Sema/SemaCodeComplete.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/clang/lib/Sema/SemaCodeComplete.cpp b/clang/lib/Sema/SemaCodeComplete.cpp index f730a3a9eaa..2877d52b084 100644 --- a/clang/lib/Sema/SemaCodeComplete.cpp +++ b/clang/lib/Sema/SemaCodeComplete.cpp @@ -3929,14 +3929,11 @@ static void FindImplementableMethods(ASTContext &Context, // Add methods from any class extensions (but not from categories; // those should go into category implementations). - for (ObjCCategoryDecl *Cat = IFace->getCategoryList(); Cat; - Cat = Cat->getNextClassCategory()) { - if (!Cat->IsClassExtension()) - continue; - - FindImplementableMethods(Context, Cat, WantInstanceMethods, ReturnType, + for (const ObjCCategoryDecl *Cat = IFace->getFirstClassExtension(); Cat; + Cat = Cat->getNextClassExtension()) + FindImplementableMethods(Context, const_cast<ObjCCategoryDecl*>(Cat), + WantInstanceMethods, ReturnType, IsInImplementation, KnownMethods); - } } if (ObjCCategoryDecl *Category = dyn_cast<ObjCCategoryDecl>(Container)) { |