r185762 - Objective-C: Warn when fast enumeration variable isn't used.
Fariborz Jahanian
fjahanian at apple.com
Sat Jul 6 11:04:13 PDT 2013
Author: fjahanian
Date: Sat Jul 6 13:04:13 2013
New Revision: 185762
URL: http://llvm.org/viewvc/llvm-project?rev=185762&view=rev
Log:
Objective-C: Warn when fast enumeration variable isn't used.
// rdar://14182680.
Modified:
cfe/trunk/lib/Sema/SemaStmt.cpp
cfe/trunk/test/SemaObjC/foreach.m
Modified: cfe/trunk/lib/Sema/SemaStmt.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaStmt.cpp?rev=185762&r1=185761&r2=185762&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaStmt.cpp (original)
+++ cfe/trunk/lib/Sema/SemaStmt.cpp Sat Jul 6 13:04:13 2013
@@ -93,9 +93,6 @@ void Sema::ActOnForEachDeclStmt(DeclGrou
return;
}
- // suppress any potential 'unused variable' warning.
- var->setUsed();
-
// foreach variables are never actually initialized in the way that
// the parser came up with.
var->setInit(0);
Modified: cfe/trunk/test/SemaObjC/foreach.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaObjC/foreach.m?rev=185762&r1=185761&r2=185762&view=diff
==============================================================================
--- cfe/trunk/test/SemaObjC/foreach.m (original)
+++ cfe/trunk/test/SemaObjC/foreach.m Sat Jul 6 13:04:13 2013
@@ -13,8 +13,8 @@ void f(NSArray *a) {
* and no diagnostics even in pedantic mode should happen.
* rdar://6814674
*/
- for (id thisKey in keys);
- for (id thisKey in keys);
+ for (id thisKey in keys); /* expected-warning {{unused variable 'thisKey'}} */
+ for (id thisKey in keys); /* expected-warning {{unused variable 'thisKey'}} */
}
/* // rdar://9072298 */
@@ -41,7 +41,7 @@ typedef struct {
int main ()
{
NSObject<NSFastEnumeration>* collection = ((void*)0);
- for (id thing in collection) { }
+ for (id thing in collection) { } /* expected-warning {{unused variable 'thing'}} */
return 0;
}
More information about the cfe-commits
mailing list