Author: Kazu Hirata Date: 2025-06-15T21:00:22-07:00 New Revision: f71fb2dc01e117481f56e040c25391883d43c1c5
URL: https://github.com/llvm/llvm-project/commit/f71fb2dc01e117481f56e040c25391883d43c1c5 DIFF: https://github.com/llvm/llvm-project/commit/f71fb2dc01e117481f56e040c25391883d43c1c5.diff LOG: [clang] Use StringRef in range-based for loops (NFC) (#144242) When we iterate over std::vector<std::string>, we can directly assign each element to StringRef. We do not need to go through separate statements. Added: Modified: clang/lib/Basic/TargetInfo.cpp clang/lib/Sema/SemaDeclAttr.cpp clang/lib/Tooling/ArgumentsAdjusters.cpp Removed: ################################################################################ diff --git a/clang/lib/Basic/TargetInfo.cpp b/clang/lib/Basic/TargetInfo.cpp index 7b577632fdf55..9429a316a9196 100644 --- a/clang/lib/Basic/TargetInfo.cpp +++ b/clang/lib/Basic/TargetInfo.cpp @@ -555,8 +555,7 @@ void TargetInfo::adjust(DiagnosticsEngine &Diags, LangOptions &Opts) { bool TargetInfo::initFeatureMap( llvm::StringMap<bool> &Features, DiagnosticsEngine &Diags, StringRef CPU, const std::vector<std::string> &FeatureVec) const { - for (const auto &F : FeatureVec) { - StringRef Name = F; + for (StringRef Name : FeatureVec) { if (Name.empty()) continue; // Apply the feature via the target. diff --git a/clang/lib/Sema/SemaDeclAttr.cpp b/clang/lib/Sema/SemaDeclAttr.cpp index 9c985e6bd5e03..2e826adf9229f 100644 --- a/clang/lib/Sema/SemaDeclAttr.cpp +++ b/clang/lib/Sema/SemaDeclAttr.cpp @@ -3232,8 +3232,7 @@ bool Sema::checkTargetAttr(SourceLocation LiteralLoc, StringRef AttrStr) { if (ParsedAttrs.Duplicate != "") return Diag(LiteralLoc, diag::err_duplicate_target_attribute) << Duplicate << None << ParsedAttrs.Duplicate << Target; - for (const auto &Feature : ParsedAttrs.Features) { - StringRef CurFeature = Feature; + for (StringRef CurFeature : ParsedAttrs.Features) { if (!CurFeature.starts_with('+') && !CurFeature.starts_with('-')) return Diag(LiteralLoc, diag::warn_unsupported_target_attribute) << Unsupported << None << AttrStr << Target; @@ -3241,8 +3240,7 @@ bool Sema::checkTargetAttr(SourceLocation LiteralLoc, StringRef AttrStr) { } if (Context.getTargetInfo().getTriple().isLoongArch()) { - for (const auto &Feature : ParsedAttrs.Features) { - StringRef CurFeature = Feature; + for (StringRef CurFeature : ParsedAttrs.Features) { if (CurFeature.starts_with("!arch=")) { StringRef ArchValue = CurFeature.split("=").second.trim(); return Diag(LiteralLoc, diag::err_attribute_unsupported) diff --git a/clang/lib/Tooling/ArgumentsAdjusters.cpp b/clang/lib/Tooling/ArgumentsAdjusters.cpp index d01c57ee69c00..999fa790124cb 100644 --- a/clang/lib/Tooling/ArgumentsAdjusters.cpp +++ b/clang/lib/Tooling/ArgumentsAdjusters.cpp @@ -22,8 +22,7 @@ namespace clang { namespace tooling { static StringRef getDriverMode(const CommandLineArguments &Args) { - for (const auto &Arg : Args) { - StringRef ArgRef = Arg; + for (StringRef ArgRef : Args) { if (ArgRef.consume_front("--driver-mode=")) { return ArgRef; } _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits