diff options
Diffstat (limited to 'clang')
-rw-r--r-- | clang/lib/Sema/SemaObjCProperty.cpp | 3 | ||||
-rw-r--r-- | clang/test/SemaObjC/warn-retain-block-property.m (renamed from clang/test/SemaObjC/arc-retain-block-property.m) | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/Sema/SemaObjCProperty.cpp b/clang/lib/Sema/SemaObjCProperty.cpp index 13350eaf37c..1794f6618a1 100644 --- a/clang/lib/Sema/SemaObjCProperty.cpp +++ b/clang/lib/Sema/SemaObjCProperty.cpp @@ -2143,8 +2143,7 @@ void Sema::CheckObjCPropertyAttributes(Decl *PDecl, && getLangOpts().getGC() == LangOptions::GCOnly && PropertyTy->isBlockPointerType()) Diag(Loc, diag::warn_objc_property_copy_missing_on_block); - else if (getLangOpts().ObjCAutoRefCount && - (Attributes & ObjCDeclSpec::DQ_PR_retain) && + else if ((Attributes & ObjCDeclSpec::DQ_PR_retain) && !(Attributes & ObjCDeclSpec::DQ_PR_readonly) && !(Attributes & ObjCDeclSpec::DQ_PR_strong) && PropertyTy->isBlockPointerType()) diff --git a/clang/test/SemaObjC/arc-retain-block-property.m b/clang/test/SemaObjC/warn-retain-block-property.m index 3b66d149302..3a54baf0f5a 100644 --- a/clang/test/SemaObjC/arc-retain-block-property.m +++ b/clang/test/SemaObjC/warn-retain-block-property.m @@ -1,5 +1,7 @@ // RUN: %clang_cc1 -fsyntax-only -fblocks -fobjc-arc -verify -Wno-objc-root-class %s // rdar://9829425 +// RUN: %clang_cc1 -fsyntax-only -fblocks -verify -Wno-objc-root-class %s +// rdar://11761511 extern void doSomething(); |