From 60331be08da5ef89a416a495c9a7bb9b8b375dea Mon Sep 17 00:00:00 2001 From: Fariborz Jahanian Date: Fri, 10 Apr 2009 22:42:54 +0000 Subject: Fix another fallout from defining __weak unconditionally. llvm-svn: 68834 --- clang/lib/Sema/SemaDeclObjC.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'clang/lib/Sema/SemaDeclObjC.cpp') diff --git a/clang/lib/Sema/SemaDeclObjC.cpp b/clang/lib/Sema/SemaDeclObjC.cpp index 898ecbb4716..74a03164313 100644 --- a/clang/lib/Sema/SemaDeclObjC.cpp +++ b/clang/lib/Sema/SemaDeclObjC.cpp @@ -1840,7 +1840,8 @@ Sema::DeclPtrTy Sema::ActOnPropertyImplDecl(SourceLocation AtLoc, return DeclPtrTy(); } if ((Context.isObjCObjectPointerType(property->getType()) || - PropType.isObjCGCStrong()) && IvarType.isObjCGCWeak()) { + PropType.isObjCGCStrong()) && IvarType.isObjCGCWeak() && + getLangOptions().getGCMode() != LangOptions::NonGC) { Diag(PropertyLoc, diag::error_strong_property) << property->getDeclName() << Ivar->getDeclName(); return DeclPtrTy(); -- cgit v1.2.3