Skip to content
  • Steve Naroff's avatar
    This is a large/messy diff that unifies the ObjC AST's with DeclContext. · 35c62ae6
    Steve Naroff authored
    - ObjCContainerDecl's (ObjCInterfaceDecl/ObjCCategoryDecl/ObjCProtocolDecl), ObjCCategoryImpl, & ObjCImplementation are all DeclContexts.
    - ObjCMethodDecl is now a ScopedDecl (so it can play nicely with DeclContext).
    - ObjCContainerDecl now does iteration/lookup using DeclContext infrastructure (no more linear search:-)
    - Removed ASTContext argument to DeclContext::lookup(). It wasn't being used and complicated it's use from an ObjC AST perspective.
    - Added Sema::ProcessPropertyDecl() and removed Sema::diagnosePropertySetterGetterMismatch().
    - Simplified Sema::ActOnAtEnd() considerably. Still more work to do.
    - Fixed an incorrect casting assumption in Sema::getCurFunctionOrMethodDecl(), now that ObjCMethodDecl is a ScopedDecl.
    - Removed addPropertyMethods from ObjCInterfaceDecl/ObjCCategoryDecl/ObjCProtocolDecl.
    
    This passes all the tests on my machine. Since many of the changes are central to the way ObjC finds it's methods, I expect some fallout (and there are still a handful of FIXME's). Nevertheless, this should be a step in the right direction.
    
    llvm-svn: 61929
    35c62ae6
Loading