[cfe-commits] r147678 - /cfe/trunk/lib/Rewrite/RewriteObjC.cpp

Ted Kremenek kremenek at apple.com
Fri Jan 6 14:05:44 PST 2012


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
>> cfe-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
> 
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits




More information about the cfe-commits mailing list