diff --git a/clang/include/clang/Analysis/Analyses/Dominators.h b/clang/include/clang/Analysis/Analyses/Dominators.h index 25a5ba9d83fe3..f588a5c7d1d7b 100644 --- a/clang/include/clang/Analysis/Analyses/Dominators.h +++ b/clang/include/clang/Analysis/Analyses/Dominators.h @@ -202,7 +202,7 @@ struct ChildrenGetterTy { auto Children = children(N); ChildrenTy Ret{Children.begin(), Children.end()}; - Ret.erase(std::remove(Ret.begin(), Ret.end(), nullptr), Ret.end()); + llvm::erase_value(Ret, nullptr); return Ret; } }; diff --git a/clang/include/clang/Basic/JsonSupport.h b/clang/include/clang/Basic/JsonSupport.h index 8b02e440df447..6cd3f4d57b846 100644 --- a/clang/include/clang/Basic/JsonSupport.h +++ b/clang/include/clang/Basic/JsonSupport.h @@ -70,7 +70,7 @@ inline std::string JsonFormat(StringRef RawSR, bool AddQuotes) { } // Remove new-lines. - Str.erase(std::remove(Str.begin(), Str.end(), '\n'), Str.end()); + llvm::erase_value(Str, '\n'); if (!AddQuotes) return Str; diff --git a/clang/include/clang/Sema/ScopeInfo.h b/clang/include/clang/Sema/ScopeInfo.h index 98ed75acd9d27..5c3bfe7e80cdc 100644 --- a/clang/include/clang/Sema/ScopeInfo.h +++ b/clang/include/clang/Sema/ScopeInfo.h @@ -1001,10 +1001,7 @@ class LambdaScopeInfo final : return NonODRUsedCapturingExprs.count(CapturingVarExpr); } void removePotentialCapture(Expr *E) { - PotentiallyCapturingExprs.erase( - std::remove(PotentiallyCapturingExprs.begin(), - PotentiallyCapturingExprs.end(), E), - PotentiallyCapturingExprs.end()); + llvm::erase_value(PotentiallyCapturingExprs, E); } void clearPotentialCaptures() { PotentiallyCapturingExprs.clear(); diff --git a/clang/lib/AST/ASTContext.cpp b/clang/lib/AST/ASTContext.cpp index d9017b347d812..1292cb6eb557c 100644 --- a/clang/lib/AST/ASTContext.cpp +++ b/clang/lib/AST/ASTContext.cpp @@ -1125,7 +1125,7 @@ void ASTContext::deduplicateMergedDefinitonsFor(NamedDecl *ND) { for (Module *&M : Merged) if (!Found.insert(M).second) M = nullptr; - Merged.erase(std::remove(Merged.begin(), Merged.end(), nullptr), Merged.end()); + llvm::erase_value(Merged, nullptr); } ArrayRef diff --git a/clang/lib/Sema/SemaExpr.cpp b/clang/lib/Sema/SemaExpr.cpp index 472b15b9ea06b..04f8540fe3b1f 100644 --- a/clang/lib/Sema/SemaExpr.cpp +++ b/clang/lib/Sema/SemaExpr.cpp @@ -16641,8 +16641,7 @@ void Sema::CheckUnusedVolatileAssignment(Expr *E) { if (auto *BO = dyn_cast(E->IgnoreParenImpCasts())) { if (BO->getOpcode() == BO_Assign) { auto &LHSs = ExprEvalContexts.back().VolatileAssignmentLHSs; - LHSs.erase(std::remove(LHSs.begin(), LHSs.end(), BO->getLHS()), - LHSs.end()); + llvm::erase_value(LHSs, BO->getLHS()); } } } diff --git a/lld/ELF/Writer.cpp b/lld/ELF/Writer.cpp index 7a3b2747042e4..0e55e9cbdb57b 100644 --- a/lld/ELF/Writer.cpp +++ b/lld/ELF/Writer.cpp @@ -221,8 +221,7 @@ void elf::combineEhSections() { } } - std::vector &v = inputSections; - v.erase(std::remove(v.begin(), v.end(), nullptr), v.end()); + llvm::erase_value(inputSections, nullptr); } static Defined *addOptionalRegular(StringRef name, SectionBase *sec, diff --git a/llvm/include/llvm/TableGen/DirectiveEmitter.h b/llvm/include/llvm/TableGen/DirectiveEmitter.h index 5c4a736eb1074..d73b9ae49235f 100644 --- a/llvm/include/llvm/TableGen/DirectiveEmitter.h +++ b/llvm/include/llvm/TableGen/DirectiveEmitter.h @@ -152,7 +152,7 @@ class Clause : public BaseRecord { } return C; }); - N.erase(std::remove(N.begin(), N.end(), '_'), N.end()); + llvm::erase_value(N, '_'); return N; }