summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--clang/lib/ARCMigrate/ObjCMT.cpp6
-rw-r--r--clang/test/ARCMT/objcmt-arc-cf-annotations.m.result2
-rw-r--r--clang/test/ARCMT/objcmt-atomic-property.m.result12
-rw-r--r--clang/test/ARCMT/objcmt-property.m.result12
4 files changed, 16 insertions, 16 deletions
diff --git a/clang/lib/ARCMigrate/ObjCMT.cpp b/clang/lib/ARCMigrate/ObjCMT.cpp
index 3801ca57150..65825cea278 100644
--- a/clang/lib/ARCMigrate/ObjCMT.cpp
+++ b/clang/lib/ARCMigrate/ObjCMT.cpp
@@ -285,12 +285,12 @@ static bool rewriteToObjCProperty(const ObjCMethodDecl *Getter,
if (!Setter)
append_attr(PropertyString, "readonly");
- // Short circuit properties that contain the name "delegate" or "dataSource",
- // or have exact name "target" to have unsafe_unretained attribute.
+ // Short circuit 'delegate' properties that contain the name "delegate" or
+ // "dataSource", or have exact name "target" to have 'assign' attribute.
if (PropertyName.equals("target") ||
(PropertyName.find("delegate") != StringRef::npos) ||
(PropertyName.find("dataSource") != StringRef::npos))
- append_attr(PropertyString, "unsafe_unretained");
+ append_attr(PropertyString, "assign");
else if (Setter) {
const ParmVarDecl *argDecl = *Setter->param_begin();
QualType ArgType = Context.getCanonicalType(argDecl->getType());
diff --git a/clang/test/ARCMT/objcmt-arc-cf-annotations.m.result b/clang/test/ARCMT/objcmt-arc-cf-annotations.m.result
index 1963d832ac0..949016a8977 100644
--- a/clang/test/ARCMT/objcmt-arc-cf-annotations.m.result
+++ b/clang/test/ARCMT/objcmt-arc-cf-annotations.m.result
@@ -2090,6 +2090,6 @@ CFAttributedStringRef CFAttributedCreate(void *CFObj CF_CONSUMED) CF_RETURNS_RET
@interface Action
@property (nonatomic) SEL action;
-@property (nonatomic, unsafe_unretained) id target;
+@property (nonatomic, assign) id target;
@end
diff --git a/clang/test/ARCMT/objcmt-atomic-property.m.result b/clang/test/ARCMT/objcmt-atomic-property.m.result
index 620ae39a00d..2bebf4a46f3 100644
--- a/clang/test/ARCMT/objcmt-atomic-property.m.result
+++ b/clang/test/ARCMT/objcmt-atomic-property.m.result
@@ -65,12 +65,12 @@ typedef char BOOL;
// Properties that contain the name "delegate" or "dataSource",
// or have exact name "target" have unsafe_unretained attribute.
@interface NSInvocation
-@property (atomic, unsafe_unretained) id target;
+@property (atomic, assign) id target;
-@property (atomic, unsafe_unretained) id dataSource;
+@property (atomic, assign) id dataSource;
-@property (atomic, unsafe_unretained) id xxxdelegateYYY;
+@property (atomic, assign) id xxxdelegateYYY;
@@ -117,12 +117,12 @@ typedef char BOOL;
@interface NSInvocation(CAT)
-@property (atomic, unsafe_unretained) id target;
+@property (atomic, assign) id target;
-@property (atomic, unsafe_unretained) id dataSource;
+@property (atomic, assign) id dataSource;
-@property (atomic, unsafe_unretained) id xxxdelegateYYY;
+@property (atomic, assign) id xxxdelegateYYY;
diff --git a/clang/test/ARCMT/objcmt-property.m.result b/clang/test/ARCMT/objcmt-property.m.result
index bd9b38bd484..4379be6e00c 100644
--- a/clang/test/ARCMT/objcmt-property.m.result
+++ b/clang/test/ARCMT/objcmt-property.m.result
@@ -65,12 +65,12 @@ typedef char BOOL;
// Properties that contain the name "delegate" or "dataSource",
// or have exact name "target" have unsafe_unretained attribute.
@interface NSInvocation
-@property (nonatomic, unsafe_unretained) id target;
+@property (nonatomic, assign) id target;
-@property (nonatomic, unsafe_unretained) id dataSource;
+@property (nonatomic, assign) id dataSource;
-@property (nonatomic, unsafe_unretained) id xxxdelegateYYY;
+@property (nonatomic, assign) id xxxdelegateYYY;
@@ -117,12 +117,12 @@ typedef char BOOL;
@interface NSInvocation(CAT)
-@property (nonatomic, unsafe_unretained) id target;
+@property (nonatomic, assign) id target;
-@property (nonatomic, unsafe_unretained) id dataSource;
+@property (nonatomic, assign) id dataSource;
-@property (nonatomic, unsafe_unretained) id xxxdelegateYYY;
+@property (nonatomic, assign) id xxxdelegateYYY;
OpenPOWER on IntegriCloud