r205477 - Objective-C [IRGen]. Add encoding for 'weak' attribute of a

Fariborz Jahanian fjahanian at apple.com
Wed Apr 2 15:49:43 PDT 2014


Author: fjahanian
Date: Wed Apr  2 17:49:42 2014
New Revision: 205477

URL: http://llvm.org/viewvc/llvm-project?rev=205477&view=rev
Log:
Objective-C [IRGen]. Add encoding for 'weak' attribute of a
'readonly' property. // rdar://16136439


Modified:
    cfe/trunk/lib/AST/ASTContext.cpp
    cfe/trunk/test/CodeGenObjC/arc-ivar-layout.m

Modified: cfe/trunk/lib/AST/ASTContext.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/ASTContext.cpp?rev=205477&r1=205476&r2=205477&view=diff
==============================================================================
--- cfe/trunk/lib/AST/ASTContext.cpp (original)
+++ cfe/trunk/lib/AST/ASTContext.cpp Wed Apr  2 17:49:42 2014
@@ -5018,6 +5018,8 @@ void ASTContext::getObjCEncodingForPrope
       S += ",C";
     if (PD->getPropertyAttributes() & ObjCPropertyDecl::OBJC_PR_retain)
       S += ",&";
+    if (PD->getPropertyAttributes() & ObjCPropertyDecl::OBJC_PR_weak)
+      S += ",W";
   } else {
     switch (PD->getSetterKind()) {
     case ObjCPropertyDecl::Assign: break;

Modified: cfe/trunk/test/CodeGenObjC/arc-ivar-layout.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenObjC/arc-ivar-layout.m?rev=205477&r1=205476&r2=205477&view=diff
==============================================================================
--- cfe/trunk/test/CodeGenObjC/arc-ivar-layout.m (original)
+++ cfe/trunk/test/CodeGenObjC/arc-ivar-layout.m Wed Apr  2 17:49:42 2014
@@ -54,3 +54,12 @@
 @implementation UnsafePerson @end
 // CHECK-LP64: L_OBJC_CLASS_NAME_20:
 // CHECK-LP64-NEXT: .asciz      "!"
+
+// rdar://16136439
+ at interface rdar16136439
+    @property (nonatomic, readonly, weak) id first;
+ at end
+
+ at implementation rdar16136439 @end
+// CHECK-LP64: L_OBJC_PROP_NAME_ATTR_29:
+// CHECK-LP64-NEXT: .asciz  "T@,R,W,N,V_first"





More information about the cfe-commits mailing list