Skip to content
  1. Oct 25, 2011
    • John McCall's avatar
      Introduce a placeholder type for "pseudo object" · c4a2d325
      John McCall authored
      expressions: expressions which refer to a logical rather
      than a physical l-value, where the logical object is
      actually accessed via custom getter/setter code.
      A subsequent patch will generalize the AST for these
      so that arbitrary "implementing" sub-expressions can
      be provided.
      
      Right now the only client is ObjC properties, but
      this should be generalizable to similar language
      features, e.g. Managed C++'s __property methods.
      
      llvm-svn: 142914
      c4a2d325
  2. Oct 17, 2011
  3. Oct 15, 2011
  4. Oct 03, 2011
  5. Oct 01, 2011
    • John McCall's avatar
      Allow the results of cf_returns_not_retained function · e4fe2457
      John McCall authored
      calls, or calls to audited functions without an explicit
      return attribute, to be casted without a bridge cast.
      Tie this mechanism in with the existing exceptions to
      the cast restrictions.  State those restrictions more
      correctly and generalize.
      
      llvm-svn: 140912
      e4fe2457
  6. Sep 27, 2011
  7. Sep 17, 2011
  8. Sep 10, 2011
  9. Sep 09, 2011
  10. Sep 08, 2011
  11. Aug 31, 2011
  12. Aug 29, 2011
  13. Aug 26, 2011
  14. Aug 22, 2011
  15. Jul 27, 2011
  16. Jul 23, 2011
  17. Jul 13, 2011
  18. Jul 08, 2011
  19. Jul 07, 2011
  20. Jul 06, 2011
  21. Jun 28, 2011
  22. Jun 22, 2011
  23. Jun 21, 2011
  24. Jun 20, 2011
  25. Jun 17, 2011
  26. Jun 16, 2011
    • John McCall's avatar
      Automatic Reference Counting. · 31168b07
      John McCall authored
      Language-design credit goes to a lot of people, but I particularly want
      to single out Blaine Garst and Patrick Beard for their contributions.
      
      Compiler implementation credit goes to Argyrios, Doug, Fariborz, and myself,
      in no particular order.
      
      llvm-svn: 133103
      31168b07
  27. Jun 11, 2011
    • Douglas Gregor's avatar
      Implement Objective-C Related Result Type semantics. · 33823727
      Douglas Gregor authored
      Related result types apply Cocoa conventions to the type of message
      sends and property accesses to Objective-C methods that are known to
      always return objects whose type is the same as the type of the
      receiving class (or a subclass thereof), such as +alloc and
      -init. This tightens up static type safety for Objective-C, so that we
      now diagnose mistakes like this:
      
      t.m:4:10: warning: incompatible pointer types initializing 'NSSet *'
      with an
            expression of type 'NSArray *' [-Wincompatible-pointer-types]
        NSSet *array = [[NSArray alloc] init];
               ^       ~~~~~~~~~~~~~~~~~~~~~~
      /System/Library/Frameworks/Foundation.framework/Headers/NSObject.h:72:1:
      note: 
            instance method 'init' is assumed to return an instance of its
            receiver
            type ('NSArray *')
      - (id)init;
      ^
      
      It also means that we get decent type inference when writing code in
      Objective-C++0x:
      
        auto array = [[NSMutableArray alloc] initWithObjects:@"one",  @"two",nil];
        //    ^ now infers NSMutableArray* rather than id
      
      llvm-svn: 132868
      33823727
  28. May 14, 2011
  29. Apr 23, 2011
  30. Apr 20, 2011
  31. Apr 16, 2011
Loading