diff options
-rw-r--r-- | clang/include/clang/AST/RecursiveASTVisitor.h | 11 | ||||
-rw-r--r-- | clang/include/clang/CodeGen/CGFunctionInfo.h | 8 | ||||
-rw-r--r-- | clang/lib/AST/ASTDumper.cpp | 12 | ||||
-rw-r--r-- | clang/lib/Frontend/ASTConsumers.cpp | 10 | ||||
-rw-r--r-- | clang/lib/Sema/SemaChecking.cpp | 8 | ||||
-rw-r--r-- | clang/lib/Sema/SemaLambda.cpp | 4 | ||||
-rw-r--r-- | clang/lib/Sema/SemaOverload.cpp | 8 | ||||
-rw-r--r-- | clang/lib/Serialization/ASTWriterDecl.cpp | 5 |
8 files changed, 28 insertions, 38 deletions
diff --git a/clang/include/clang/AST/RecursiveASTVisitor.h b/clang/include/clang/AST/RecursiveASTVisitor.h index 1693976cf85..5bec82ef191 100644 --- a/clang/include/clang/AST/RecursiveASTVisitor.h +++ b/clang/include/clang/AST/RecursiveASTVisitor.h @@ -1429,9 +1429,8 @@ DEF_TRAVERSE_DECL(ObjCMethodDecl, { if (D->getReturnTypeSourceInfo()) { TRY_TO(TraverseTypeLoc(D->getReturnTypeSourceInfo()->getTypeLoc())); } - for (ObjCMethodDecl::param_iterator I = D->param_begin(), E = D->param_end(); - I != E; ++I) { - TRY_TO(TraverseDecl(*I)); + for (ParmVarDecl *Parameter : D->parameters()) { + TRY_TO(TraverseDecl(Parameter)); } if (D->isThisDeclarationADefinition()) { TRY_TO(TraverseStmt(D->getBody())); @@ -1832,10 +1831,8 @@ bool RecursiveASTVisitor<Derived>::TraverseFunctionHelper(FunctionDecl *D) { // if the traverser is visiting implicit code. Parameter variable // declarations do not have valid TypeSourceInfo, so to visit them // we need to traverse the declarations explicitly. - for (FunctionDecl::param_const_iterator I = D->param_begin(), - E = D->param_end(); - I != E; ++I) - TRY_TO(TraverseDecl(*I)); + for (ParmVarDecl *Parameter : D->parameters()) + TRY_TO(TraverseDecl(Parameter)); } if (CXXConstructorDecl *Ctor = dyn_cast<CXXConstructorDecl>(D)) { diff --git a/clang/include/clang/CodeGen/CGFunctionInfo.h b/clang/include/clang/CodeGen/CGFunctionInfo.h index 699b005f5aa..8dd6ad1c21e 100644 --- a/clang/include/clang/CodeGen/CGFunctionInfo.h +++ b/clang/include/clang/CodeGen/CGFunctionInfo.h @@ -400,10 +400,10 @@ public: const FunctionDecl *FD) { if (!prototype->isVariadic()) return All; if (FD) - additional += std::count_if(FD->param_begin(), FD->param_end(), - [](const ParmVarDecl *PVD) { - return PVD->hasAttr<PassObjectSizeAttr>(); - }); + additional += + llvm::count_if(FD->parameters(), [](const ParmVarDecl *PVD) { + return PVD->hasAttr<PassObjectSizeAttr>(); + }); return RequiredArgs(prototype->getNumParams() + additional); } diff --git a/clang/lib/AST/ASTDumper.cpp b/clang/lib/AST/ASTDumper.cpp index e1d52eaf0d9..fc206b05c14 100644 --- a/clang/lib/AST/ASTDumper.cpp +++ b/clang/lib/AST/ASTDumper.cpp @@ -1154,10 +1154,8 @@ void ASTDumper::VisitFunctionDecl(const FunctionDecl *D) { if (!D->param_begin() && D->getNumParams()) dumpChild([=] { OS << "<<NULL params x " << D->getNumParams() << ">>"; }); else - for (FunctionDecl::param_const_iterator I = D->param_begin(), - E = D->param_end(); - I != E; ++I) - dumpDecl(*I); + for (const ParmVarDecl *Parameter : D->parameters()) + dumpDecl(Parameter); if (const CXXConstructorDecl *C = dyn_cast<CXXConstructorDecl>(D)) for (CXXConstructorDecl::init_const_iterator I = C->init_begin(), @@ -1548,10 +1546,8 @@ void ASTDumper::VisitObjCMethodDecl(const ObjCMethodDecl *D) { if (D->isThisDeclarationADefinition()) { dumpDeclContext(D); } else { - for (ObjCMethodDecl::param_const_iterator I = D->param_begin(), - E = D->param_end(); - I != E; ++I) - dumpDecl(*I); + for (const ParmVarDecl *Parameter : D->parameters()) + dumpDecl(Parameter); } if (D->isVariadic()) diff --git a/clang/lib/Frontend/ASTConsumers.cpp b/clang/lib/Frontend/ASTConsumers.cpp index d5fc289d3d2..3602b121c2b 100644 --- a/clang/lib/Frontend/ASTConsumers.cpp +++ b/clang/lib/Frontend/ASTConsumers.cpp @@ -290,13 +290,12 @@ void DeclContextPrinter::PrintDeclContext(const DeclContext* DC, // Print the parameters. Out << "("; bool PrintComma = false; - for (FunctionDecl::param_const_iterator I = D->param_begin(), - E = D->param_end(); I != E; ++I) { + for (ParmVarDecl *Parameter : D->parameters()) { if (PrintComma) Out << ", "; else PrintComma = true; - Out << **I; + Out << *Parameter; } Out << ")"; @@ -320,13 +319,12 @@ void DeclContextPrinter::PrintDeclContext(const DeclContext* DC, // Print the parameters. Out << "("; bool PrintComma = false; - for (FunctionDecl::param_const_iterator I = D->param_begin(), - E = D->param_end(); I != E; ++I) { + for (ParmVarDecl *Parameter : D->parameters()) { if (PrintComma) Out << ", "; else PrintComma = true; - Out << **I; + Out << *Parameter; } Out << ")"; diff --git a/clang/lib/Sema/SemaChecking.cpp b/clang/lib/Sema/SemaChecking.cpp index 49548608a64..ea1e7e6102e 100644 --- a/clang/lib/Sema/SemaChecking.cpp +++ b/clang/lib/Sema/SemaChecking.cpp @@ -2961,11 +2961,11 @@ bool Sema::SemaBuiltinVAStartImpl(CallExpr *TheCall) { // Get the last formal in the current function. const ParmVarDecl *LastArg; if (CurBlock) - LastArg = *(CurBlock->TheDecl->param_end()-1); + LastArg = CurBlock->TheDecl->parameters().back(); else if (FunctionDecl *FD = getCurFunctionDecl()) - LastArg = *(FD->param_end()-1); + LastArg = FD->parameters().back(); else - LastArg = *(getCurMethodDecl()->param_end()-1); + LastArg = getCurMethodDecl()->parameters().back(); SecondArgIsLastNamedArgument = PV == LastArg; Type = PV->getType(); @@ -8499,7 +8499,7 @@ void Sema::DiagnoseAlwaysNonNullPointer(Expr *E, } if (const auto *FD = dyn_cast<FunctionDecl>(PV->getDeclContext())) { - auto ParamIter = std::find(FD->param_begin(), FD->param_end(), PV); + auto ParamIter = llvm::find(FD->parameters(), PV); assert(ParamIter != FD->param_end()); unsigned ParamNo = std::distance(FD->param_begin(), ParamIter); diff --git a/clang/lib/Sema/SemaLambda.cpp b/clang/lib/Sema/SemaLambda.cpp index 73e0077d193..1b8410d7f4b 100644 --- a/clang/lib/Sema/SemaLambda.cpp +++ b/clang/lib/Sema/SemaLambda.cpp @@ -1150,8 +1150,8 @@ static void addFunctionPointerConversion(Sema &S, CXXMethodDecl *CallOperator) { // This conversion is explicitly disabled if the lambda's function has // pass_object_size attributes on any of its parameters. - if (std::any_of(CallOperator->param_begin(), CallOperator->param_end(), - std::mem_fn(&ParmVarDecl::hasAttr<PassObjectSizeAttr>))) + if (llvm::any_of(CallOperator->parameters(), + std::mem_fn(&ParmVarDecl::hasAttr<PassObjectSizeAttr>))) return; // Add the conversion to function pointer. diff --git a/clang/lib/Sema/SemaOverload.cpp b/clang/lib/Sema/SemaOverload.cpp index baf673b5e68..4ddbfed9dd7 100644 --- a/clang/lib/Sema/SemaOverload.cpp +++ b/clang/lib/Sema/SemaOverload.cpp @@ -39,8 +39,8 @@ using namespace clang; using namespace sema; static bool functionHasPassObjectSizeParams(const FunctionDecl *FD) { - return std::any_of(FD->param_begin(), FD->param_end(), - std::mem_fn(&ParmVarDecl::hasAttr<PassObjectSizeAttr>)); + return llvm::any_of(FD->parameters(), + std::mem_fn(&ParmVarDecl::hasAttr<PassObjectSizeAttr>)); } /// A convenience routine for creating a decayed reference to a function. @@ -8935,8 +8935,8 @@ static bool checkAddressOfFunctionIsAvailable(Sema &S, const FunctionDecl *FD, return false; } - auto I = std::find_if(FD->param_begin(), FD->param_end(), - std::mem_fn(&ParmVarDecl::hasAttr<PassObjectSizeAttr>)); + auto I = llvm::find_if( + FD->parameters(), std::mem_fn(&ParmVarDecl::hasAttr<PassObjectSizeAttr>)); if (I == FD->param_end()) return true; diff --git a/clang/lib/Serialization/ASTWriterDecl.cpp b/clang/lib/Serialization/ASTWriterDecl.cpp index 6a22f669816..ed0a262638c 100644 --- a/clang/lib/Serialization/ASTWriterDecl.cpp +++ b/clang/lib/Serialization/ASTWriterDecl.cpp @@ -1019,9 +1019,8 @@ void ASTDeclWriter::VisitBlockDecl(BlockDecl *D) { Record.AddStmt(D->getBody()); Record.AddTypeSourceInfo(D->getSignatureAsWritten()); Record.push_back(D->param_size()); - for (FunctionDecl::param_iterator P = D->param_begin(), PEnd = D->param_end(); - P != PEnd; ++P) - Record.AddDeclRef(*P); + for (ParmVarDecl *P : D->parameters()) + Record.AddDeclRef(P); Record.push_back(D->isVariadic()); Record.push_back(D->blockMissingReturnType()); Record.push_back(D->isConversionFromLambda()); |