Recognize __attribute__((NSObject)) directly applied
on retain properties. (radar 7809468).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99951 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/SemaObjC/nsobject-attribute.m b/test/SemaObjC/nsobject-attribute.m
index fdf9e35..13a4929 100644
--- a/test/SemaObjC/nsobject-attribute.m
+++ b/test/SemaObjC/nsobject-attribute.m
@@ -7,11 +7,16 @@
 typedef struct S1  __attribute__ ((NSObject)) CGColorRef1; // expected-error {{__attribute ((NSObject)) is for pointer types only}}
 typedef void *  __attribute__ ((NSObject)) CGColorRef2; // expected-error {{__attribute ((NSObject)) is for pointer types only}}
 
+
 @interface HandTested {
 @public
     CGColorRef x;
 }
+
 @property(copy) CGColorRef x;
+// rdar: // 7809460
+typedef struct CGColor *CGColorRefNoNSObject;
+@property (nonatomic, retain) __attribute__((NSObject)) CGColorRefNoNSObject color;
 @end
 
 void setProperty(id self, id value)  {
@@ -24,6 +29,7 @@
 
 @implementation HandTested
 @synthesize x=x;
+@dynamic color;
 @end
 
 int main(int argc, char *argv[]) {