Skip to content
  • Sean Callanan's avatar
    Pulled in a new version of LLVM/Clang to solve a variety · d5c17edb
    Sean Callanan authored
    of problems with Objective-C object completion.  To go
    along with the LLVM/Clang-side fixes, we have a variety
    of Objective-C improvements.
    
    Fixes include:
    
    - It is now possible to run expressions when stopped in
      an Objective-C class method and have "self" act just
      like "self" would act in the class method itself (i.e.,
      [self classMethod] works without casting the return
      type if debug info is present).  To accomplish this,
      the expression masquerades as a class method added by
      a category.
    
    - Objective-C objects can now provide methods and
      properties and methods to Clang on demand (i.e., the
      ASTImporter sets hasExternalVisibleDecls on Objective-C
      interface objects).
    
    - Objective-C built-in types, which had long been a bone
      of contention (should we be using "id"?  "id*"?), are
      now fetched correctly using accessor functions on
      ClangASTContext.  We inhibit searches for them in the
      debug information.
    
    There are also a variety of logging fixes, and I made two
    changes to the test suite:
    
    - Enabled a test case for Objective-C properties in the
      current translation unit.
    
    - Added a test case for calling Objective-C class methods
      when stopped in a class method.
    
    llvm-svn: 144607
    d5c17edb
Loading