diff options
author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2011-07-26 21:48:26 +0000 |
---|---|---|
committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2011-07-26 21:48:26 +0000 |
commit | e3be9795c81cfb8b8726f7288b16da09aa15f8e3 (patch) | |
tree | 8155609eab6df89a75988b01ae674011ea609266 /llvm/lib/CodeGen | |
parent | a5f7a8cfdebbf7eaf0775941191ed12ac8f35a40 (diff) | |
download | bcm5719-llvm-e3be9795c81cfb8b8726f7288b16da09aa15f8e3.tar.gz bcm5719-llvm-e3be9795c81cfb8b8726f7288b16da09aa15f8e3.zip |
In ARC we emit an error when compiling:
@interface Foo : NSObject
@property (readonly) id myProp;
@end
@implementation Foo
@synthesize myProp;
@end
t.m:9:13: error: ARC forbids synthesizing a property of an Objective-C object with unspecified storage attribute
@synthesize myProp;
^
which is fine, we want the ownership of the synthesized ivar to be explicit. But we should _not_ emit an error
for the following cases, because we can get the ownership either from the declared ivar or from the property type:
@interface Foo : NSObject {
__weak id _myProp1;
id myProp2;
}
@property (readonly) id myProp1;
@property (readonly) id myProp2;
@property (readonly) __strong id myProp3;
@end
@implementation Foo
@synthesize myProp1 = _myProp1;
@synthesize myProp2;
@synthesize myProp3;
@end

rdar://9844006.
llvm-svn: 136155
Diffstat (limited to 'llvm/lib/CodeGen')
0 files changed, 0 insertions, 0 deletions