r207416 - [C++11] Converting to range-based for loops. No functional changes intended.

Aaron Ballman aaron at aaronballman.com
Mon Apr 28 06:01:33 PDT 2014


Author: aaronballman
Date: Mon Apr 28 08:01:32 2014
New Revision: 207416

URL: http://llvm.org/viewvc/llvm-project?rev=207416&view=rev
Log:
[C++11] Converting to range-based for loops. No functional changes intended.

Modified:
    cfe/trunk/lib/Analysis/Consumed.cpp

Modified: cfe/trunk/lib/Analysis/Consumed.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/Consumed.cpp?rev=207416&r1=207415&r2=207416&view=diff
==============================================================================
--- cfe/trunk/lib/Analysis/Consumed.cpp (original)
+++ cfe/trunk/lib/Analysis/Consumed.cpp Mon Apr 28 08:01:32 2014
@@ -57,11 +57,9 @@ ConsumedWarningsHandlerBase::~ConsumedWa
 static SourceLocation getFirstStmtLoc(const CFGBlock *Block) {
   // Find the source location of the first statement in the block, if the block
   // is not empty.
-  for (CFGBlock::const_iterator BI = Block->begin(), BE = Block->end();
-       BI != BE; ++BI) {
-    if (Optional<CFGStmt> CS = BI->getAs<CFGStmt>())
+  for (const auto &BI : *Block)
+    if (Optional<CFGStmt> CS = BI.getAs<CFGStmt>())
       return CS->getStmt()->getLocStart();
-  }
 
   // Block is empty.
   // If we have one successor, return the first statement in that block
@@ -1144,21 +1142,19 @@ bool ConsumedBlockInfo::isBackEdgeTarget
 void ConsumedStateMap::checkParamsForReturnTypestate(SourceLocation BlameLoc,
   ConsumedWarningsHandlerBase &WarningsHandler) const {
   
-  for (VarMapType::const_iterator DMI = VarMap.begin(), DME = VarMap.end();
-       DMI != DME; ++DMI) {
-    
-    if (isa<ParmVarDecl>(DMI->first)) {
-      const ParmVarDecl *Param = cast<ParmVarDecl>(DMI->first);
+  for (const auto &DMI : VarMap) {
+    if (isa<ParmVarDecl>(DMI.first)) {
+      const ParmVarDecl *Param = cast<ParmVarDecl>(DMI.first);
       const ReturnTypestateAttr *RTA = Param->getAttr<ReturnTypestateAttr>();
       
       if (!RTA)
         continue;
       
       ConsumedState ExpectedState = mapReturnTypestateAttrState(RTA);      
-      if (DMI->second != ExpectedState)
+      if (DMI.second != ExpectedState)
         WarningsHandler.warnParamReturnTypestateMismatch(BlameLoc,
           Param->getNameAsString(), stateToString(ExpectedState),
-          stateToString(DMI->second));
+          stateToString(DMI.second));
     }
   }
 }
@@ -1194,16 +1190,14 @@ void ConsumedStateMap::intersect(const C
     return;
   }
   
-  for (VarMapType::const_iterator DMI = Other->VarMap.begin(),
-       DME = Other->VarMap.end(); DMI != DME; ++DMI) {
-    
-    LocalState = this->getState(DMI->first);
+  for (const auto &DMI : Other->VarMap) {
+    LocalState = this->getState(DMI.first);
     
     if (LocalState == CS_None)
       continue;
     
-    if (LocalState != DMI->second)
-       VarMap[DMI->first] = CS_Unknown;
+    if (LocalState != DMI.second)
+     VarMap[DMI.first] = CS_Unknown;
   }
 }
 
@@ -1214,18 +1208,16 @@ void ConsumedStateMap::intersectAtLoopHe
   ConsumedState LocalState;
   SourceLocation BlameLoc = getLastStmtLoc(LoopBack);
   
-  for (VarMapType::const_iterator DMI = LoopBackStates->VarMap.begin(),
-       DME = LoopBackStates->VarMap.end(); DMI != DME; ++DMI) {
-    
-    LocalState = this->getState(DMI->first);
+  for (const auto &DMI : LoopBackStates->VarMap) {    
+    LocalState = this->getState(DMI.first);
     
     if (LocalState == CS_None)
       continue;
     
-    if (LocalState != DMI->second) {
-      VarMap[DMI->first] = CS_Unknown;
-      WarningsHandler.warnLoopStateMismatch(
-        BlameLoc, DMI->first->getNameAsString());
+    if (LocalState != DMI.second) {
+      VarMap[DMI.first] = CS_Unknown;
+      WarningsHandler.warnLoopStateMismatch(BlameLoc,
+                                            DMI.first->getNameAsString());
     }
   }
 }
@@ -1250,13 +1242,9 @@ void ConsumedStateMap::remove(const VarD
 }
 
 bool ConsumedStateMap::operator!=(const ConsumedStateMap *Other) const {
-  for (VarMapType::const_iterator DMI = Other->VarMap.begin(),
-       DME = Other->VarMap.end(); DMI != DME; ++DMI) {
-    
-    if (this->getState(DMI->first) != DMI->second)
-      return true;
-  }
-  
+  for (const auto &DMI : Other->VarMap)
+    if (this->getState(DMI.first) != DMI.second)
+      return true;  
   return false;
 }
 
@@ -1396,16 +1384,11 @@ void ConsumedAnalyzer::run(AnalysisDeclC
   ConsumedStmtVisitor Visitor(AC, *this, CurrStates);
   
   // Add all trackable parameters to the state map.
-  for (auto PI : D->params()) {
+  for (const auto *PI : D->params())
     Visitor.VisitParmVarDecl(PI);
-  }
   
   // Visit all of the function's basic blocks.
-  for (PostOrderCFGView::iterator I = SortedGraph->begin(),
-       E = SortedGraph->end(); I != E; ++I) {
-    
-    const CFGBlock *CurrBlock = *I;
-    
+  for (const auto *CurrBlock : *SortedGraph) {
     if (CurrStates == NULL)
       CurrStates = BlockInfo.getInfo(CurrBlock);
     
@@ -1421,16 +1404,14 @@ void ConsumedAnalyzer::run(AnalysisDeclC
     Visitor.reset(CurrStates);
     
     // Visit all of the basic block's statements.
-    for (CFGBlock::const_iterator BI = CurrBlock->begin(),
-         BE = CurrBlock->end(); BI != BE; ++BI) {
-      
-      switch (BI->getKind()) {
+    for (const auto &BI : *CurrBlock) {
+      switch (BI.getKind()) {
       case CFGElement::Statement:
-        Visitor.Visit(BI->castAs<CFGStmt>().getStmt());
+        Visitor.Visit(BI.castAs<CFGStmt>().getStmt());
         break;
         
       case CFGElement::TemporaryDtor: {
-        const CFGTemporaryDtor DTor = BI->castAs<CFGTemporaryDtor>();
+        const CFGTemporaryDtor &DTor = BI.castAs<CFGTemporaryDtor>();
         const CXXBindTemporaryExpr *BTE = DTor.getBindTemporaryExpr();
         
         Visitor.checkCallability(PropagationInfo(BTE),
@@ -1440,7 +1421,7 @@ void ConsumedAnalyzer::run(AnalysisDeclC
       }
       
       case CFGElement::AutomaticObjectDtor: {
-        const CFGAutomaticObjDtor DTor = BI->castAs<CFGAutomaticObjDtor>();
+        const CFGAutomaticObjDtor &DTor = BI.castAs<CFGAutomaticObjDtor>();
         SourceLocation Loc = DTor.getTriggerStmt()->getLocEnd();
         const VarDecl *Var = DTor.getVarDecl();
         





More information about the cfe-commits mailing list