Clang is not issuing a warning because it doesn't need to. This is a false positive. NewMsg is assigned a value in every case of the switch statement, and the switch statement covers the entire set of enum values.
On Jan 6, 2012, at 1:04 PM, jahanian wrote: > > On Jan 6, 2012, at 12:05 PM, Chad Rosier wrote: > >> Author: mcrosier >> Date: Fri Jan 6 14:05:14 2012 >> New Revision: 147678 >> >> URL: http://llvm.org/viewvc/llvm-project?rev=147678&view=rev >> Log: >> Fix uninitialized variable warning. > > Thanks. Too bad clang not issuing these warnings. > > - Fariborz > >> >> Modified: >> cfe/trunk/lib/Rewrite/RewriteObjC.cpp >> >> Modified: cfe/trunk/lib/Rewrite/RewriteObjC.cpp >> URL: >> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Rewrite/RewriteObjC.cpp?rev=147678&r1=147677&r2=147678&view=diff >> ============================================================================== >> --- cfe/trunk/lib/Rewrite/RewriteObjC.cpp (original) >> +++ cfe/trunk/lib/Rewrite/RewriteObjC.cpp Fri Jan 6 14:05:14 2012 >> @@ -1288,7 +1288,7 @@ >> SmallVector<SourceLocation, 1> SelLocs; >> OldMsg->getSelectorLocs(SelLocs); >> >> - ObjCMessageExpr *NewMsg; >> + ObjCMessageExpr *NewMsg = 0; >> switch (OldMsg->getReceiverKind()) { >> case ObjCMessageExpr::Class: >> NewMsg = ObjCMessageExpr::Create(*Context, OldMsg->getType(), >> @@ -1361,7 +1361,7 @@ >> SmallVector<SourceLocation, 1> SelLocs; >> SmallVector<Expr*, 1> Args; >> >> - ObjCMessageExpr *NewMsg; >> + ObjCMessageExpr *NewMsg = 0; >> switch (OldMsg->getReceiverKind()) { >> case ObjCMessageExpr::Class: >> NewMsg = ObjCMessageExpr::Create(*Context, OldMsg->getType(), >> >> >> _______________________________________________ >> cfe-commits mailing list >> [email protected] >> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits > > _______________________________________________ > cfe-commits mailing list > [email protected] > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
