diff options
| author | Aaron Ballman <aaron@aaronballman.com> | 2014-03-07 15:12:56 +0000 |
|---|---|---|
| committer | Aaron Ballman <aaron@aaronballman.com> | 2014-03-07 15:12:56 +0000 |
| commit | f6bf62e2d0a08d05a6029d629e2164c8c1e8f655 (patch) | |
| tree | 42f5a5e505e19c5c0c1b1edc75e46f0ca4391d99 /clang/lib/Sema | |
| parent | 65fe9377f08448d12c04a9fcdbd0d49fd6807ecd (diff) | |
| download | bcm5719-llvm-f6bf62e2d0a08d05a6029d629e2164c8c1e8f655.tar.gz bcm5719-llvm-f6bf62e2d0a08d05a6029d629e2164c8c1e8f655.zip | |
[C++11] Replacing FunctionDecl iterators param_begin() and param_end() with iterator_range params(). Updating all of the usages of the iterators with range-based for loops.
llvm-svn: 203248
Diffstat (limited to 'clang/lib/Sema')
| -rw-r--r-- | clang/lib/Sema/SemaDecl.cpp | 8 | ||||
| -rw-r--r-- | clang/lib/Sema/SemaDeclCXX.cpp | 25 | ||||
| -rw-r--r-- | clang/lib/Sema/SemaTemplate.cpp | 6 | ||||
| -rw-r--r-- | clang/lib/Sema/SemaTemplateDeduction.cpp | 7 |
4 files changed, 16 insertions, 30 deletions
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp index 9840d1eca11..925515ab5c5 100644 --- a/clang/lib/Sema/SemaDecl.cpp +++ b/clang/lib/Sema/SemaDecl.cpp @@ -7326,11 +7326,8 @@ Sema::ActOnFunctionDeclarator(Scope *S, Declarator &D, DeclContext *DC, } llvm::SmallPtrSet<const Type *, 16> ValidTypes; - for (FunctionDecl::param_iterator PI = NewFD->param_begin(), - PE = NewFD->param_end(); PI != PE; ++PI) { - ParmVarDecl *Param = *PI; + for (auto Param : NewFD->params()) checkIsValidOpenCLKernelParameter(*this, D, Param, ValidTypes); - } } MarkUnusedFileScopedDecl(NewFD); @@ -9599,8 +9596,7 @@ Decl *Sema::ActOnStartOfFunctionDef(Scope *FnBodyScope, Decl *D) { /*CheckParameterNames=*/true); // Introduce our parameters into the function scope - for (unsigned p = 0, NumParams = FD->getNumParams(); p < NumParams; ++p) { - ParmVarDecl *Param = FD->getParamDecl(p); + for (auto Param : FD->params()) { Param->setOwningFunction(FD); // If this has an identifier, add it to the scope stack. diff --git a/clang/lib/Sema/SemaDeclCXX.cpp b/clang/lib/Sema/SemaDeclCXX.cpp index 2d35d5cda75..4257b52ee6c 100644 --- a/clang/lib/Sema/SemaDeclCXX.cpp +++ b/clang/lib/Sema/SemaDeclCXX.cpp @@ -10810,10 +10810,8 @@ bool Sema::CheckOverloadedOperatorDeclaration(FunctionDecl *FnDecl) { diag::err_operator_overload_static) << FnDecl->getDeclName(); } else { bool ClassOrEnumParam = false; - for (FunctionDecl::param_iterator Param = FnDecl->param_begin(), - ParamEnd = FnDecl->param_end(); - Param != ParamEnd; ++Param) { - QualType ParamType = (*Param)->getType().getNonReferenceType(); + for (auto Param : FnDecl->params()) { + QualType ParamType = Param->getType().getNonReferenceType(); if (ParamType->isDependentType() || ParamType->isRecordType() || ParamType->isEnumeralType()) { ClassOrEnumParam = true; @@ -10834,12 +10832,11 @@ bool Sema::CheckOverloadedOperatorDeclaration(FunctionDecl *FnDecl) { // Only the function-call operator allows default arguments // (C++ [over.call]p1). if (Op != OO_Call) { - for (FunctionDecl::param_iterator Param = FnDecl->param_begin(); - Param != FnDecl->param_end(); ++Param) { - if ((*Param)->hasDefaultArg()) - return Diag((*Param)->getLocation(), + for (auto Param : FnDecl->params()) { + if (Param->hasDefaultArg()) + return Diag(Param->getLocation(), diag::err_operator_overload_default_arg) - << FnDecl->getDeclName() << (*Param)->getDefaultArgRange(); + << FnDecl->getDeclName() << Param->getDefaultArgRange(); } } @@ -11042,13 +11039,11 @@ FinishedParams: // A parameter-declaration-clause containing a default argument is not // equivalent to any of the permitted forms. - for (FunctionDecl::param_iterator Param = FnDecl->param_begin(), - ParamEnd = FnDecl->param_end(); - Param != ParamEnd; ++Param) { - if ((*Param)->hasDefaultArg()) { - Diag((*Param)->getDefaultArgRange().getBegin(), + for (auto Param : FnDecl->params()) { + if (Param->hasDefaultArg()) { + Diag(Param->getDefaultArgRange().getBegin(), diag::err_literal_operator_default_argument) - << (*Param)->getDefaultArgRange(); + << Param->getDefaultArgRange(); break; } } diff --git a/clang/lib/Sema/SemaTemplate.cpp b/clang/lib/Sema/SemaTemplate.cpp index f930e02b9cf..94627aa865b 100644 --- a/clang/lib/Sema/SemaTemplate.cpp +++ b/clang/lib/Sema/SemaTemplate.cpp @@ -6284,10 +6284,8 @@ static void StripImplicitInstantiation(NamedDecl *D) { if (FunctionDecl *FD = dyn_cast<FunctionDecl>(D)) { FD->setInlineSpecified(false); - for (FunctionDecl::param_iterator I = FD->param_begin(), - E = FD->param_end(); - I != E; ++I) - (*I)->dropAttrs(); + for (auto I : FD->params()) + I->dropAttrs(); } } diff --git a/clang/lib/Sema/SemaTemplateDeduction.cpp b/clang/lib/Sema/SemaTemplateDeduction.cpp index 75324c617e5..ef325b04edf 100644 --- a/clang/lib/Sema/SemaTemplateDeduction.cpp +++ b/clang/lib/Sema/SemaTemplateDeduction.cpp @@ -2507,11 +2507,8 @@ Sema::SubstituteExplicitTemplateArguments( if (ExplicitTemplateArgs.size() == 0) { // No arguments to substitute; just copy over the parameter types and // fill in the function type. - for (FunctionDecl::param_iterator P = Function->param_begin(), - PEnd = Function->param_end(); - P != PEnd; - ++P) - ParamTypes.push_back((*P)->getType()); + for (auto P : Function->params()) + ParamTypes.push_back(P->getType()); if (FunctionType) *FunctionType = Function->getType(); |

