summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend
diff options
context:
space:
mode:
authorAaron Ballman <aaron@aaronballman.com>2014-03-07 19:56:05 +0000
committerAaron Ballman <aaron@aaronballman.com>2014-03-07 19:56:05 +0000
commit629afaefe0cd1a583ccee54918b7b13f48bfe273 (patch)
tree9a236cdf36b4b96c8aad05ccdb63d8f40f9acd9c /clang/lib/Frontend
parentd72a5f103da45e5abe10497308fce5aeb992cdc2 (diff)
downloadbcm5719-llvm-629afaefe0cd1a583ccee54918b7b13f48bfe273.tar.gz
bcm5719-llvm-629afaefe0cd1a583ccee54918b7b13f48bfe273.zip
[C++11] Replacing DeclBase iterators decls_begin() and decls_end() with iterator_range decls(). The same is true for the noload versions of these APIs. Updating all of the usages of the iterators with range-based for loops.
llvm-svn: 203278
Diffstat (limited to 'clang/lib/Frontend')
-rw-r--r--clang/lib/Frontend/ASTConsumers.cpp33
-rw-r--r--clang/lib/Frontend/ASTMerge.cpp8
-rw-r--r--clang/lib/Frontend/ASTUnit.cpp5
3 files changed, 21 insertions, 25 deletions
diff --git a/clang/lib/Frontend/ASTConsumers.cpp b/clang/lib/Frontend/ASTConsumers.cpp
index 44a84f70e88..aee8cd71675 100644
--- a/clang/lib/Frontend/ASTConsumers.cpp
+++ b/clang/lib/Frontend/ASTConsumers.cpp
@@ -368,8 +368,7 @@ void DeclContextPrinter::PrintDeclContext(const DeclContext* DC,
Out << "\n";
// Print decls in the DeclContext.
- for (DeclContext::decl_iterator I = DC->decls_begin(), E = DC->decls_end();
- I != E; ++I) {
+ for (auto *I : DC->decls()) {
for (unsigned i = 0; i < Indentation; ++i)
Out << " ";
@@ -393,58 +392,58 @@ void DeclContextPrinter::PrintDeclContext(const DeclContext* DC,
case Decl::CXXDestructor:
case Decl::CXXConversion:
{
- DeclContext* DC = cast<DeclContext>(*I);
+ DeclContext* DC = cast<DeclContext>(I);
PrintDeclContext(DC, Indentation+2);
break;
}
case Decl::IndirectField: {
- IndirectFieldDecl* IFD = cast<IndirectFieldDecl>(*I);
+ IndirectFieldDecl* IFD = cast<IndirectFieldDecl>(I);
Out << "<IndirectField> " << *IFD << '\n';
break;
}
case Decl::Label: {
- LabelDecl *LD = cast<LabelDecl>(*I);
+ LabelDecl *LD = cast<LabelDecl>(I);
Out << "<Label> " << *LD << '\n';
break;
}
case Decl::Field: {
- FieldDecl *FD = cast<FieldDecl>(*I);
+ FieldDecl *FD = cast<FieldDecl>(I);
Out << "<field> " << *FD << '\n';
break;
}
case Decl::Typedef:
case Decl::TypeAlias: {
- TypedefNameDecl* TD = cast<TypedefNameDecl>(*I);
+ TypedefNameDecl* TD = cast<TypedefNameDecl>(I);
Out << "<typedef> " << *TD << '\n';
break;
}
case Decl::EnumConstant: {
- EnumConstantDecl* ECD = cast<EnumConstantDecl>(*I);
+ EnumConstantDecl* ECD = cast<EnumConstantDecl>(I);
Out << "<enum constant> " << *ECD << '\n';
break;
}
case Decl::Var: {
- VarDecl* VD = cast<VarDecl>(*I);
+ VarDecl* VD = cast<VarDecl>(I);
Out << "<var> " << *VD << '\n';
break;
}
case Decl::ImplicitParam: {
- ImplicitParamDecl* IPD = cast<ImplicitParamDecl>(*I);
+ ImplicitParamDecl* IPD = cast<ImplicitParamDecl>(I);
Out << "<implicit parameter> " << *IPD << '\n';
break;
}
case Decl::ParmVar: {
- ParmVarDecl* PVD = cast<ParmVarDecl>(*I);
+ ParmVarDecl* PVD = cast<ParmVarDecl>(I);
Out << "<parameter> " << *PVD << '\n';
break;
}
case Decl::ObjCProperty: {
- ObjCPropertyDecl* OPD = cast<ObjCPropertyDecl>(*I);
+ ObjCPropertyDecl* OPD = cast<ObjCPropertyDecl>(I);
Out << "<objc property> " << *OPD << '\n';
break;
}
case Decl::FunctionTemplate: {
- FunctionTemplateDecl* FTD = cast<FunctionTemplateDecl>(*I);
+ FunctionTemplateDecl* FTD = cast<FunctionTemplateDecl>(I);
Out << "<function template> " << *FTD << '\n';
break;
}
@@ -457,21 +456,21 @@ void DeclContextPrinter::PrintDeclContext(const DeclContext* DC,
break;
}
case Decl::NamespaceAlias: {
- NamespaceAliasDecl* NAD = cast<NamespaceAliasDecl>(*I);
+ NamespaceAliasDecl* NAD = cast<NamespaceAliasDecl>(I);
Out << "<namespace alias> " << *NAD << '\n';
break;
}
case Decl::ClassTemplate: {
- ClassTemplateDecl *CTD = cast<ClassTemplateDecl>(*I);
+ ClassTemplateDecl *CTD = cast<ClassTemplateDecl>(I);
Out << "<class template> " << *CTD << '\n';
break;
}
case Decl::OMPThreadPrivate: {
- Out << "<omp threadprivate> " << '"' << *I << "\"\n";
+ Out << "<omp threadprivate> " << '"' << I << "\"\n";
break;
}
default:
- Out << "DeclKind: " << DK << '"' << *I << "\"\n";
+ Out << "DeclKind: " << DK << '"' << I << "\"\n";
llvm_unreachable("decl unhandled");
}
}
diff --git a/clang/lib/Frontend/ASTMerge.cpp b/clang/lib/Frontend/ASTMerge.cpp
index b6c644eba78..ff6434c5694 100644
--- a/clang/lib/Frontend/ASTMerge.cpp
+++ b/clang/lib/Frontend/ASTMerge.cpp
@@ -57,16 +57,14 @@ void ASTMergeAction::ExecuteAction() {
/*MinimalImport=*/false);
TranslationUnitDecl *TU = Unit->getASTContext().getTranslationUnitDecl();
- for (DeclContext::decl_iterator D = TU->decls_begin(),
- DEnd = TU->decls_end();
- D != DEnd; ++D) {
+ for (auto *D : TU->decls()) {
// Don't re-import __va_list_tag, __builtin_va_list.
- if (NamedDecl *ND = dyn_cast<NamedDecl>(*D))
+ if (const auto *ND = dyn_cast<NamedDecl>(D))
if (IdentifierInfo *II = ND->getIdentifier())
if (II->isStr("__va_list_tag") || II->isStr("__builtin_va_list"))
continue;
- Importer.Import(*D);
+ Importer.Import(D);
}
delete Unit;
diff --git a/clang/lib/Frontend/ASTUnit.cpp b/clang/lib/Frontend/ASTUnit.cpp
index ace3e9c6aad..a3ebd41a586 100644
--- a/clang/lib/Frontend/ASTUnit.cpp
+++ b/clang/lib/Frontend/ASTUnit.cpp
@@ -873,9 +873,8 @@ public:
void handleFileLevelDecl(Decl *D) {
Unit.addFileLevelDecl(D);
if (NamespaceDecl *NSD = dyn_cast<NamespaceDecl>(D)) {
- for (NamespaceDecl::decl_iterator
- I = NSD->decls_begin(), E = NSD->decls_end(); I != E; ++I)
- handleFileLevelDecl(*I);
+ for (auto *I : NSD->decls())
+ handleFileLevelDecl(I);
}
}
OpenPOWER on IntegriCloud