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

Nico Weber thakis at chromium.org
Mon Apr 28 07:43:58 PDT 2014


Didn't the I at the end of all these names stand for "iterator"? Should
that be removed in patches like this?
On Apr 28, 2014 6:08 AM, "Aaron Ballman" <aaron at aaronballman.com> wrote:

> 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();
>
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140428/5f0e99f7/attachment.html>


More information about the cfe-commits mailing list