From ca5ae66122218e61a67a37d93531c2e8fd73b132 Mon Sep 17 00:00:00 2001 From: Mike Stump Date: Tue, 14 Apr 2009 00:57:29 +0000 Subject: Fixup CodeGen for __weak __block variables. Radar 6756266 llvm-svn: 69010 --- clang/lib/Sema/SemaDecl.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'clang/lib/Sema') diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp index ef8b9e842e6..f4f131141f3 100644 --- a/clang/lib/Sema/SemaDecl.cpp +++ b/clang/lib/Sema/SemaDecl.cpp @@ -1803,7 +1803,8 @@ bool Sema::CheckVariableDeclaration(VarDecl *NewVD, NamedDecl *PrevDecl, Invalid = true; } - if (NewVD->hasLocalStorage() && T.isObjCGCWeak()) + if (NewVD->hasLocalStorage() && T.isObjCGCWeak() + && !NewVD->getAttr()) Diag(NewVD->getLocation(), diag::warn_attribute_weak_on_local); bool isIllegalVLA = T->isVariableArrayType() && NewVD->hasGlobalStorage(); -- cgit v1.2.3