diff options
author | Aaron Ballman <aaron@aaronballman.com> | 2014-03-07 19:56:05 +0000 |
---|---|---|
committer | Aaron Ballman <aaron@aaronballman.com> | 2014-03-07 19:56:05 +0000 |
commit | 629afaefe0cd1a583ccee54918b7b13f48bfe273 (patch) | |
tree | 9a236cdf36b4b96c8aad05ccdb63d8f40f9acd9c /clang/lib/Frontend | |
parent | d72a5f103da45e5abe10497308fce5aeb992cdc2 (diff) | |
download | bcm5719-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.cpp | 33 | ||||
-rw-r--r-- | clang/lib/Frontend/ASTMerge.cpp | 8 | ||||
-rw-r--r-- | clang/lib/Frontend/ASTUnit.cpp | 5 |
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); } } |