Commits

Chris Lattner committed 0dfb1ec7904
introduce a new "IsDirectIVarAccess" bit to MemberRefExpr. Properties that have both storage AND accessors are accessed by-default through their accessors. This bit indicates that a specific MRE should access the storage instead. Use this new bit in the synthesized getter/setter for "StorageObjC" properties (it will also be used for other things in the future). This also teaches SILGen about it. One interesting aspect of this representation is that it makes it trivial to add some expression syntax for directly accessing a store+computed property (e.g. ObjC properties, also someday didSet/willSet properties) someday if we care. This would be analogous to the "self->ivar" syntax in objc (vs self.ivar). No, we will not use "->" for this. :-) NFC since this is the use is still hidden under the -enable-new-objc-properties staging option. Swift SVN r12965