Author: Kazu Hirata Date: 2025-07-03T08:36:03-07:00 New Revision: a244907922354ead70182002af1d10067bd2b8b6
URL: https://github.com/llvm/llvm-project/commit/a244907922354ead70182002af1d10067bd2b8b6 DIFF: https://github.com/llvm/llvm-project/commit/a244907922354ead70182002af1d10067bd2b8b6.diff LOG: [clang] Use range-based for loops (NFC) (#146811) Note that LLVM Coding Standards discourages std::for_each and llvm::for_each unless the callable object already exists. Added: Modified: clang/include/clang/Sema/DeclSpec.h clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp clang/lib/Driver/ToolChains/HIPSPV.cpp clang/tools/clang-installapi/ClangInstallAPI.cpp clang/tools/clang-installapi/Options.cpp Removed: ################################################################################ diff --git a/clang/include/clang/Sema/DeclSpec.h b/clang/include/clang/Sema/DeclSpec.h index 6c4a32c4ac2f0..567ad2d5934d4 100644 --- a/clang/include/clang/Sema/DeclSpec.h +++ b/clang/include/clang/Sema/DeclSpec.h @@ -1821,8 +1821,8 @@ class DecompositionDeclarator { if (DeleteBindings) delete[] Bindings; else - llvm::for_each(llvm::MutableArrayRef(Bindings, NumBindings), - [](Binding &B) { B.Attrs.reset(); }); + for (Binding &B : llvm::MutableArrayRef(Bindings, NumBindings)) + B.Attrs.reset(); Bindings = nullptr; NumBindings = 0; DeleteBindings = false; diff --git a/clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp b/clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp index 2623b9bffe6ae..70172d44845a3 100644 --- a/clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp +++ b/clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp @@ -75,11 +75,8 @@ class OpenACCClauseCIREmitter final void setLastDeviceTypeClause(const OpenACCDeviceTypeClause &clause) { lastDeviceTypeValues.clear(); - llvm::for_each(clause.getArchitectures(), - [this](const DeviceTypeArgument &arg) { - lastDeviceTypeValues.push_back( - decodeDeviceType(arg.getIdentifierInfo())); - }); + for (const DeviceTypeArgument &arg : clause.getArchitectures()) + lastDeviceTypeValues.push_back(decodeDeviceType(arg.getIdentifierInfo())); } mlir::Value emitIntExpr(const Expr *intExpr) { @@ -511,11 +508,9 @@ class OpenACCClauseCIREmitter final if constexpr (isOneOfTypes<OpTy, mlir::acc::InitOp, mlir::acc::ShutdownOp>) { - llvm::for_each( - clause.getArchitectures(), [this](const DeviceTypeArgument &arg) { - operation.addDeviceType(builder.getContext(), - decodeDeviceType(arg.getIdentifierInfo())); - }); + for (const DeviceTypeArgument &arg : clause.getArchitectures()) + operation.addDeviceType(builder.getContext(), + decodeDeviceType(arg.getIdentifierInfo())); } else if constexpr (isOneOfTypes<OpTy, mlir::acc::SetOp>) { assert(!operation.getDeviceTypeAttr() && "already have device-type?"); assert(clause.getArchitectures().size() <= 1); diff --git a/clang/lib/Driver/ToolChains/HIPSPV.cpp b/clang/lib/Driver/ToolChains/HIPSPV.cpp index c86790f66a79e..7c83ebcface2a 100644 --- a/clang/lib/Driver/ToolChains/HIPSPV.cpp +++ b/clang/lib/Driver/ToolChains/HIPSPV.cpp @@ -149,11 +149,9 @@ void HIPSPVToolChain::addClangTargetOptions( CC1Args.append( {"-fvisibility=hidden", "-fapply-global-visibility-to-externs"}); - llvm::for_each(getDeviceLibs(DriverArgs), - [&](const BitCodeLibraryInfo &BCFile) { - CC1Args.append({"-mlink-builtin-bitcode", - DriverArgs.MakeArgString(BCFile.Path)}); - }); + for (const BitCodeLibraryInfo &BCFile : getDeviceLibs(DriverArgs)) + CC1Args.append( + {"-mlink-builtin-bitcode", DriverArgs.MakeArgString(BCFile.Path)}); } Tool *HIPSPVToolChain::buildLinker() const { diff --git a/clang/tools/clang-installapi/ClangInstallAPI.cpp b/clang/tools/clang-installapi/ClangInstallAPI.cpp index f68236abaa6c9..60e9fc4354be4 100644 --- a/clang/tools/clang-installapi/ClangInstallAPI.cpp +++ b/clang/tools/clang-installapi/ClangInstallAPI.cpp @@ -102,8 +102,8 @@ static bool run(ArrayRef<const char *> Args, const char *ProgName) { if (!Opts.DriverOpts.DylibToVerify.empty()) { TargetList Targets; - llvm::for_each(Opts.DriverOpts.Targets, - [&](const auto &T) { Targets.push_back(T.first); }); + for (const auto &T : Opts.DriverOpts.Targets) + Targets.push_back(T.first); if (!Ctx.Verifier->verifyBinaryAttrs(Targets, Ctx.BA, Ctx.Reexports, Opts.LinkerOpts.AllowableClients, Opts.LinkerOpts.RPaths, Ctx.FT)) diff --git a/clang/tools/clang-installapi/Options.cpp b/clang/tools/clang-installapi/Options.cpp index 52b48a34d361c..64324a3f8b010 100644 --- a/clang/tools/clang-installapi/Options.cpp +++ b/clang/tools/clang-installapi/Options.cpp @@ -100,8 +100,8 @@ getArgListFromJSON(const StringRef Input, llvm::opt::OptTable *Table, } std::vector<const char *> CArgs(Storage.size()); - llvm::for_each(Storage, - [&CArgs](StringRef Str) { CArgs.emplace_back(Str.data()); }); + for (StringRef Str : Storage) + CArgs.emplace_back(Str.data()); unsigned MissingArgIndex, MissingArgCount; return Table->ParseArgs(CArgs, MissingArgIndex, MissingArgCount); @@ -730,8 +730,8 @@ Options::Options(DiagnosticsEngine &Diag, FileManager *FM, // After all InstallAPI necessary arguments have been collected. Go back and // assign values that were unknown before the clang driver opt table was used. ArchitectureSet AllArchs; - llvm::for_each(DriverOpts.Targets, - [&AllArchs](const auto &T) { AllArchs.set(T.first.Arch); }); + for (const auto &T : DriverOpts.Targets) + AllArchs.set(T.first.Arch); auto assignDefaultLibAttrs = [&AllArchs](LibAttrs &Attrs) { for (auto &[_, Archs] : Attrs.get()) if (Archs.empty()) @@ -794,8 +794,8 @@ std::pair<LibAttrs, ReexportedInterfaces> Options::getReexportedLibraries() { }; PlatformSet Platforms; - llvm::for_each(DriverOpts.Targets, - [&](const auto &T) { Platforms.insert(T.first.Platform); }); + for (const auto &T : DriverOpts.Targets) + Platforms.insert(T.first.Platform); // Populate search paths by looking at user paths before system ones. PathSeq FwkSearchPaths(FEOpts.FwkPaths.begin(), FEOpts.FwkPaths.end()); for (const PlatformType P : Platforms) { _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits