<div dir="ltr">Was this design/code reviewed (there's no mention in the commit message of a link to a phab review, for instance)? Probably worth some discussion - if there was a review, could you link it here in a reply?</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jun 24, 2021 at 2:23 PM Martin Storsjö via cfe-commits <<a href="mailto:cfe-commits@lists.llvm.org">cfe-commits@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
Author: Martin Storsjö<br>
Date: 2021-06-25T00:22:01+03:00<br>
New Revision: e5c7c171e5db6af1e3dca1059df4287b0d147eaf<br>
<br>
URL: <a href="https://github.com/llvm/llvm-project/commit/e5c7c171e5db6af1e3dca1059df4287b0d147eaf" rel="noreferrer" target="_blank">https://github.com/llvm/llvm-project/commit/e5c7c171e5db6af1e3dca1059df4287b0d147eaf</a><br>
DIFF: <a href="https://github.com/llvm/llvm-project/commit/e5c7c171e5db6af1e3dca1059df4287b0d147eaf.diff" rel="noreferrer" target="_blank">https://github.com/llvm/llvm-project/commit/e5c7c171e5db6af1e3dca1059df4287b0d147eaf.diff</a><br>
<br>
LOG: [clang] Rename StringRef _lower() method calls to _insensitive()<br>
<br>
This is mostly a mechanical change, but a testcase that contains<br>
parts of the StringRef class (clang/test/Analysis/llvm-conventions.cpp)<br>
isn't touched.<br>
<br>
Added: <br>
<br>
<br>
Modified: <br>
clang/lib/ASTMatchers/Dynamic/Marshallers.cpp<br>
clang/lib/Analysis/CalledOnceCheck.cpp<br>
clang/lib/Analysis/RetainSummaryManager.cpp<br>
clang/lib/Basic/FileManager.cpp<br>
clang/lib/CodeGen/TargetInfo.cpp<br>
clang/lib/Driver/Driver.cpp<br>
clang/lib/Driver/ToolChains/Arch/RISCV.cpp<br>
clang/lib/Driver/ToolChains/Clang.cpp<br>
clang/lib/Driver/ToolChains/Fuchsia.cpp<br>
clang/lib/Driver/ToolChains/Gnu.cpp<br>
clang/lib/Driver/ToolChains/Hexagon.cpp<br>
clang/lib/Driver/ToolChains/MSVC.cpp<br>
clang/lib/Driver/ToolChains/MinGW.cpp<br>
clang/lib/Format/Format.cpp<br>
clang/lib/Format/SortJavaScriptImports.cpp<br>
clang/lib/Format/UsingDeclarationsSorter.cpp<br>
clang/lib/Frontend/CompilerInvocation.cpp<br>
clang/lib/Lex/HeaderMap.cpp<br>
clang/lib/Lex/PPDirectives.cpp<br>
clang/lib/Lex/PPMacroExpansion.cpp<br>
clang/lib/Sema/CodeCompleteConsumer.cpp<br>
clang/lib/Sema/SemaChecking.cpp<br>
clang/lib/Sema/SemaCodeComplete.cpp<br>
clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp<br>
clang/lib/StaticAnalyzer/Checkers/ContainerModeling.cpp<br>
clang/lib/StaticAnalyzer/Checkers/GCDAntipatternChecker.cpp<br>
clang/lib/StaticAnalyzer/Checkers/Iterator.cpp<br>
clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp<br>
clang/lib/Tooling/Inclusions/HeaderIncludes.cpp<br>
clang/lib/Tooling/InterpolatingCompilationDatabase.cpp<br>
clang/tools/clang-refactor/TestSupport.cpp<br>
clang/tools/clang-scan-deps/ClangScanDeps.cpp<br>
clang/tools/driver/driver.cpp<br>
clang/tools/libclang/CIndexCodeCompletion.cpp<br>
clang/unittests/Tooling/CompilationDatabaseTest.cpp<br>
<br>
Removed: <br>
<br>
<br>
<br>
################################################################################<br>
diff --git a/clang/lib/ASTMatchers/Dynamic/Marshallers.cpp b/clang/lib/ASTMatchers/Dynamic/Marshallers.cpp<br>
index f6fdbe868e2df..40db70e6f4a51 100644<br>
--- a/clang/lib/ASTMatchers/Dynamic/Marshallers.cpp<br>
+++ b/clang/lib/ASTMatchers/Dynamic/Marshallers.cpp<br>
@@ -20,7 +20,7 @@ getBestGuess(llvm::StringRef Search, llvm::ArrayRef<llvm::StringRef> Allowed,<br>
++MaxEditDistance;<br>
llvm::StringRef Res;<br>
for (const llvm::StringRef &Item : Allowed) {<br>
- if (Item.equals_lower(Search)) {<br>
+ if (Item.equals_insensitive(Search)) {<br>
assert(!Item.equals(Search) && "This should be handled earlier on.");<br>
MaxEditDistance = 1;<br>
Res = Item;<br>
@@ -40,7 +40,7 @@ getBestGuess(llvm::StringRef Search, llvm::ArrayRef<llvm::StringRef> Allowed,<br>
auto NoPrefix = Item;<br>
if (!NoPrefix.consume_front(DropPrefix))<br>
continue;<br>
- if (NoPrefix.equals_lower(Search)) {<br>
+ if (NoPrefix.equals_insensitive(Search)) {<br>
if (NoPrefix.equals(Search))<br>
return Item.str();<br>
MaxEditDistance = 1;<br>
<br>
diff --git a/clang/lib/Analysis/CalledOnceCheck.cpp b/clang/lib/Analysis/CalledOnceCheck.cpp<br>
index db094129a9608..661f7b999f2b9 100644<br>
--- a/clang/lib/Analysis/CalledOnceCheck.cpp<br>
+++ b/clang/lib/Analysis/CalledOnceCheck.cpp<br>
@@ -478,7 +478,7 @@ bool mentionsAnyOfConventionalNames(const Expr *E) {<br>
return llvm::any_of(<br>
CONVENTIONAL_CONDITIONS,<br>
[ConditionName](const llvm::StringLiteral &Conventional) {<br>
- return ConditionName.contains_lower(Conventional);<br>
+ return ConditionName.contains_insensitive(Conventional);<br>
});<br>
});<br>
}<br>
<br>
diff --git a/clang/lib/Analysis/RetainSummaryManager.cpp b/clang/lib/Analysis/RetainSummaryManager.cpp<br>
index 58ead1dfe3522..7ed1e40333f43 100644<br>
--- a/clang/lib/Analysis/RetainSummaryManager.cpp<br>
+++ b/clang/lib/Analysis/RetainSummaryManager.cpp<br>
@@ -189,20 +189,22 @@ static bool hasRCAnnotation(const Decl *D, StringRef rcAnnotation) {<br>
}<br>
<br>
static bool isRetain(const FunctionDecl *FD, StringRef FName) {<br>
- return FName.startswith_lower("retain") || FName.endswith_lower("retain");<br>
+ return FName.startswith_insensitive("retain") ||<br>
+ FName.endswith_insensitive("retain");<br>
}<br>
<br>
static bool isRelease(const FunctionDecl *FD, StringRef FName) {<br>
- return FName.startswith_lower("release") || FName.endswith_lower("release");<br>
+ return FName.startswith_insensitive("release") ||<br>
+ FName.endswith_insensitive("release");<br>
}<br>
<br>
static bool isAutorelease(const FunctionDecl *FD, StringRef FName) {<br>
- return FName.startswith_lower("autorelease") ||<br>
- FName.endswith_lower("autorelease");<br>
+ return FName.startswith_insensitive("autorelease") ||<br>
+ FName.endswith_insensitive("autorelease");<br>
}<br>
<br>
static bool isMakeCollectable(StringRef FName) {<br>
- return FName.contains_lower("MakeCollectable");<br>
+ return FName.contains_insensitive("MakeCollectable");<br>
}<br>
<br>
/// A function is OSObject related if it is declared on a subclass<br>
@@ -1100,7 +1102,7 @@ RetainSummaryManager::getStandardMethodSummary(const ObjCMethodDecl *MD,<br>
if (S.isKeywordSelector()) {<br>
for (unsigned i = 0, e = S.getNumArgs(); i != e; ++i) {<br>
StringRef Slot = S.getNameForSlot(i);<br>
- if (Slot.substr(Slot.size() - 8).equals_lower("delegate")) {<br>
+ if (Slot.substr(Slot.size() - 8).equals_insensitive("delegate")) {<br>
if (ResultEff == ObjCInitRetE)<br>
ResultEff = RetEffect::MakeNoRetHard();<br>
else<br>
<br>
diff --git a/clang/lib/Basic/FileManager.cpp b/clang/lib/Basic/FileManager.cpp<br>
index d39d7ba22643b..df306bd83136e 100644<br>
--- a/clang/lib/Basic/FileManager.cpp<br>
+++ b/clang/lib/Basic/FileManager.cpp<br>
@@ -128,7 +128,7 @@ FileManager::getDirectoryRef(StringRef DirName, bool CacheFailure) {<br>
// Stat("C:") does not recognize "C:" as a valid directory<br>
std::string DirNameStr;<br>
if (DirName.size() > 1 && DirName.back() == ':' &&<br>
- DirName.equals_lower(llvm::sys::path::root_name(DirName))) {<br>
+ DirName.equals_insensitive(llvm::sys::path::root_name(DirName))) {<br>
DirNameStr = DirName.str() + '.';<br>
DirName = DirNameStr;<br>
}<br>
<br>
diff --git a/clang/lib/CodeGen/TargetInfo.cpp b/clang/lib/CodeGen/TargetInfo.cpp<br>
index 2b3c0e3492a05..e9565a5aef63d 100644<br>
--- a/clang/lib/CodeGen/TargetInfo.cpp<br>
+++ b/clang/lib/CodeGen/TargetInfo.cpp<br>
@@ -2610,7 +2610,7 @@ static std::string qualifyWindowsLibrary(llvm::StringRef Lib) {<br>
bool Quote = (Lib.find(' ') != StringRef::npos);<br>
std::string ArgStr = Quote ? "\"" : "";<br>
ArgStr += Lib;<br>
- if (!Lib.endswith_lower(".lib") && !Lib.endswith_lower(".a"))<br>
+ if (!Lib.endswith_insensitive(".lib") && !Lib.endswith_insensitive(".a"))<br>
ArgStr += ".lib";<br>
ArgStr += Quote ? "\"" : "";<br>
return ArgStr;<br>
<br>
diff --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp<br>
index 930941fe8558c..1afaaba79105b 100644<br>
--- a/clang/lib/Driver/Driver.cpp<br>
+++ b/clang/lib/Driver/Driver.cpp<br>
@@ -591,9 +591,9 @@ static llvm::Triple computeTargetTriple(const Driver &D,<br>
A = Args.getLastArg(options::OPT_march_EQ);<br>
if (A && Target.isRISCV()) {<br>
StringRef ArchName = A->getValue();<br>
- if (ArchName.startswith_lower("rv32"))<br>
+ if (ArchName.startswith_insensitive("rv32"))<br>
Target.setArch(llvm::Triple::riscv32);<br>
- else if (ArchName.startswith_lower("rv64"))<br>
+ else if (ArchName.startswith_insensitive("rv64"))<br>
Target.setArch(llvm::Triple::riscv64);<br>
}<br>
<br>
@@ -1755,7 +1755,7 @@ void Driver::HandleAutocompletions(StringRef PassedFlags) const {<br>
// case-insensitive sorting for consistency with the -help option<br>
// which prints out options in the case-insensitive alphabetical order.<br>
llvm::sort(SuggestedCompletions, [](StringRef A, StringRef B) {<br>
- if (int X = A.compare_lower(B))<br>
+ if (int X = A.compare_insensitive(B))<br>
return X < 0;<br>
return A.compare(B) > 0;<br>
});<br>
@@ -3585,7 +3585,8 @@ void Driver::handleArguments(Compilation &C, DerivedArgList &Args,<br>
if (Args.hasArg(options::OPT_emit_llvm))<br>
Diag(clang::diag::err_drv_emit_llvm_link);<br>
if (IsCLMode() && LTOMode != LTOK_None &&<br>
- !Args.getLastArgValue(options::OPT_fuse_ld_EQ).equals_lower("lld"))<br>
+ !Args.getLastArgValue(options::OPT_fuse_ld_EQ)<br>
+ .equals_insensitive("lld"))<br>
Diag(clang::diag::err_drv_lto_without_lld);<br>
}<br>
<br>
@@ -5346,7 +5347,7 @@ const ToolChain &Driver::getToolChain(const ArgList &Args,<br>
case llvm::Triple::MSVC:<br>
case llvm::Triple::UnknownEnvironment:<br>
if (Args.getLastArgValue(options::OPT_fuse_ld_EQ)<br>
- .startswith_lower("bfd"))<br>
+ .startswith_insensitive("bfd"))<br>
TC = std::make_unique<toolchains::CrossWindowsToolChain>(<br>
*this, Target, Args);<br>
else<br>
<br>
diff --git a/clang/lib/Driver/ToolChains/Arch/RISCV.cpp b/clang/lib/Driver/ToolChains/Arch/RISCV.cpp<br>
index c7f2a3ea5e023..f131d5321070c 100644<br>
--- a/clang/lib/Driver/ToolChains/Arch/RISCV.cpp<br>
+++ b/clang/lib/Driver/ToolChains/Arch/RISCV.cpp<br>
@@ -610,17 +610,19 @@ StringRef riscv::getRISCVABI(const ArgList &Args, const llvm::Triple &Triple) {<br>
// rv64* -> lp64<br>
StringRef MArch = getRISCVArch(Args, Triple);<br>
<br>
- if (MArch.startswith_lower("rv32")) {<br>
+ if (MArch.startswith_insensitive("rv32")) {<br>
// FIXME: parse `March` to find `D` extension properly<br>
- if (MArch.substr(4).contains_lower("d") || MArch.startswith_lower("rv32g"))<br>
+ if (MArch.substr(4).contains_insensitive("d") ||<br>
+ MArch.startswith_insensitive("rv32g"))<br>
return "ilp32d";<br>
- else if (MArch.startswith_lower("rv32e"))<br>
+ else if (MArch.startswith_insensitive("rv32e"))<br>
return "ilp32e";<br>
else<br>
return "ilp32";<br>
- } else if (MArch.startswith_lower("rv64")) {<br>
+ } else if (MArch.startswith_insensitive("rv64")) {<br>
// FIXME: parse `March` to find `D` extension properly<br>
- if (MArch.substr(4).contains_lower("d") || MArch.startswith_lower("rv64g"))<br>
+ if (MArch.substr(4).contains_insensitive("d") ||<br>
+ MArch.startswith_insensitive("rv64g"))<br>
return "lp64d";<br>
else<br>
return "lp64";<br>
@@ -696,11 +698,11 @@ StringRef riscv::getRISCVArch(const llvm::opt::ArgList &Args,<br>
if (const Arg *A = Args.getLastArg(options::OPT_mabi_EQ)) {<br>
StringRef MABI = A->getValue();<br>
<br>
- if (MABI.equals_lower("ilp32e"))<br>
+ if (MABI.equals_insensitive("ilp32e"))<br>
return "rv32e";<br>
- else if (MABI.startswith_lower("ilp32"))<br>
+ else if (MABI.startswith_insensitive("ilp32"))<br>
return "rv32imafdc";<br>
- else if (MABI.startswith_lower("lp64"))<br>
+ else if (MABI.startswith_insensitive("lp64"))<br>
return "rv64imafdc";<br>
}<br>
<br>
<br>
diff --git a/clang/lib/Driver/ToolChains/Clang.cpp b/clang/lib/Driver/ToolChains/Clang.cpp<br>
index 29b15b516b9e5..f1b5e25525979 100644<br>
--- a/clang/lib/Driver/ToolChains/Clang.cpp<br>
+++ b/clang/lib/Driver/ToolChains/Clang.cpp<br>
@@ -2063,7 +2063,7 @@ static void SetRISCVSmallDataLimit(const ToolChain &TC, const ArgList &Args,<br>
D.Diag(diag::warn_drv_unsupported_sdata);<br>
}<br>
} else if (Args.getLastArgValue(options::OPT_mcmodel_EQ)<br>
- .equals_lower("large") &&<br>
+ .equals_insensitive("large") &&<br>
(Triple.getArch() == llvm::Triple::riscv64)) {<br>
// Not support linker relaxation for RV64 with large code model.<br>
SmallDataLimit = "0";<br>
@@ -6331,7 +6331,7 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,<br>
// -finput_charset=UTF-8 is default. Reject others<br>
if (Arg *inputCharset = Args.getLastArg(options::OPT_finput_charset_EQ)) {<br>
StringRef value = inputCharset->getValue();<br>
- if (!value.equals_lower("utf-8"))<br>
+ if (!value.equals_insensitive("utf-8"))<br>
D.Diag(diag::err_drv_invalid_value) << inputCharset->getAsString(Args)<br>
<< value;<br>
}<br>
@@ -6339,7 +6339,7 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,<br>
// -fexec_charset=UTF-8 is default. Reject others<br>
if (Arg *execCharset = Args.getLastArg(options::OPT_fexec_charset_EQ)) {<br>
StringRef value = execCharset->getValue();<br>
- if (!value.equals_lower("utf-8"))<br>
+ if (!value.equals_insensitive("utf-8"))<br>
D.Diag(diag::err_drv_invalid_value) << execCharset->getAsString(Args)<br>
<< value;<br>
}<br>
@@ -7266,17 +7266,17 @@ void Clang::AddClangCLArgs(const ArgList &Args, types::ID InputType,<br>
StringRef GuardArgs = A->getValue();<br>
// The only valid options are "cf", "cf,nochecks", "cf-", "ehcont" and<br>
// "ehcont-".<br>
- if (GuardArgs.equals_lower("cf")) {<br>
+ if (GuardArgs.equals_insensitive("cf")) {<br>
// Emit CFG instrumentation and the table of address-taken functions.<br>
CmdArgs.push_back("-cfguard");<br>
- } else if (GuardArgs.equals_lower("cf,nochecks")) {<br>
+ } else if (GuardArgs.equals_insensitive("cf,nochecks")) {<br>
// Emit only the table of address-taken functions.<br>
CmdArgs.push_back("-cfguard-no-checks");<br>
- } else if (GuardArgs.equals_lower("ehcont")) {<br>
+ } else if (GuardArgs.equals_insensitive("ehcont")) {<br>
// Emit EH continuation table.<br>
CmdArgs.push_back("-ehcontguard");<br>
- } else if (GuardArgs.equals_lower("cf-") ||<br>
- GuardArgs.equals_lower("ehcont-")) {<br>
+ } else if (GuardArgs.equals_insensitive("cf-") ||<br>
+ GuardArgs.equals_insensitive("ehcont-")) {<br>
// Do nothing, but we might want to emit a security warning in future.<br>
} else {<br>
D.Diag(diag::err_drv_invalid_value) << A->getSpelling() << GuardArgs;<br>
<br>
diff --git a/clang/lib/Driver/ToolChains/Fuchsia.cpp b/clang/lib/Driver/ToolChains/Fuchsia.cpp<br>
index 502afdc1e30c9..fd9804a7f3532 100644<br>
--- a/clang/lib/Driver/ToolChains/Fuchsia.cpp<br>
+++ b/clang/lib/Driver/ToolChains/Fuchsia.cpp<br>
@@ -54,8 +54,8 @@ void fuchsia::Linker::ConstructJob(Compilation &C, const JobAction &JA,<br>
CmdArgs.push_back("now");<br>
<br>
const char *Exec = Args.MakeArgString(ToolChain.GetLinkerPath());<br>
- if (llvm::sys::path::filename(Exec).equals_lower("ld.lld") ||<br>
- llvm::sys::path::stem(Exec).equals_lower("ld.lld")) {<br>
+ if (llvm::sys::path::filename(Exec).equals_insensitive("ld.lld") ||<br>
+ llvm::sys::path::stem(Exec).equals_insensitive("ld.lld")) {<br>
CmdArgs.push_back("-z");<br>
CmdArgs.push_back("rodynamic");<br>
CmdArgs.push_back("-z");<br>
<br>
diff --git a/clang/lib/Driver/ToolChains/Gnu.cpp b/clang/lib/Driver/ToolChains/Gnu.cpp<br>
index 517ba60e0b77c..bd5f9c744bba6 100644<br>
--- a/clang/lib/Driver/ToolChains/Gnu.cpp<br>
+++ b/clang/lib/Driver/ToolChains/Gnu.cpp<br>
@@ -51,9 +51,9 @@ static void normalizeCPUNamesForAssembler(const ArgList &Args,<br>
ArgStringList &CmdArgs) {<br>
if (Arg *A = Args.getLastArg(options::OPT_mcpu_EQ)) {<br>
StringRef CPUArg(A->getValue());<br>
- if (CPUArg.equals_lower("krait"))<br>
+ if (CPUArg.equals_insensitive("krait"))<br>
CmdArgs.push_back("-mcpu=cortex-a15");<br>
- else if(CPUArg.equals_lower("kryo"))<br>
+ else if (CPUArg.equals_insensitive("kryo"))<br>
CmdArgs.push_back("-mcpu=cortex-a57");<br>
else<br>
Args.AddLastArg(CmdArgs, options::OPT_mcpu_EQ);<br>
<br>
diff --git a/clang/lib/Driver/ToolChains/Hexagon.cpp b/clang/lib/Driver/ToolChains/Hexagon.cpp<br>
index e58b666dbfc00..df97da5a20d6d 100644<br>
--- a/clang/lib/Driver/ToolChains/Hexagon.cpp<br>
+++ b/clang/lib/Driver/ToolChains/Hexagon.cpp<br>
@@ -38,7 +38,7 @@ static void handleHVXWarnings(const Driver &D, const ArgList &Args) {<br>
// Handle the unsupported values passed to mhvx-length.<br>
if (Arg *A = Args.getLastArg(options::OPT_mhexagon_hvx_length_EQ)) {<br>
StringRef Val = A->getValue();<br>
- if (!Val.equals_lower("64b") && !Val.equals_lower("128b"))<br>
+ if (!Val.equals_insensitive("64b") && !Val.equals_insensitive("128b"))<br>
D.Diag(diag::err_drv_unsupported_option_argument)<br>
<< A->getOption().getName() << Val;<br>
}<br>
@@ -218,8 +218,8 @@ constructHexagonLinkArgs(Compilation &C, const JobAction &JA,<br>
bool IncDefLibs = !Args.hasArg(options::OPT_nodefaultlibs);<br>
bool UseG0 = false;<br>
const char *Exec = Args.MakeArgString(HTC.GetLinkerPath());<br>
- bool UseLLD = (llvm::sys::path::filename(Exec).equals_lower("ld.lld") ||<br>
- llvm::sys::path::stem(Exec).equals_lower("ld.lld"));<br>
+ bool UseLLD = (llvm::sys::path::filename(Exec).equals_insensitive("ld.lld") ||<br>
+ llvm::sys::path::stem(Exec).equals_insensitive("ld.lld"));<br>
bool UseShared = IsShared && !IsStatic;<br>
StringRef CpuVer = toolchains::HexagonToolChain::GetTargetCPUVersion(Args);<br>
<br>
<br>
diff --git a/clang/lib/Driver/ToolChains/MSVC.cpp b/clang/lib/Driver/ToolChains/MSVC.cpp<br>
index 98cf0fff49b2a..0dc94a4c6c7dc 100644<br>
--- a/clang/lib/Driver/ToolChains/MSVC.cpp<br>
+++ b/clang/lib/Driver/ToolChains/MSVC.cpp<br>
@@ -181,24 +181,25 @@ findVCToolChainViaEnvironment(llvm::vfs::FileSystem &VFS, std::string &Path,<br>
<br>
// whatever/VC/bin --> old toolchain, VC dir is toolchain dir.<br>
llvm::StringRef TestPath = PathEntry;<br>
- bool IsBin = llvm::sys::path::filename(TestPath).equals_lower("bin");<br>
+ bool IsBin =<br>
+ llvm::sys::path::filename(TestPath).equals_insensitive("bin");<br>
if (!IsBin) {<br>
// Strip any architecture subdir like "amd64".<br>
TestPath = llvm::sys::path::parent_path(TestPath);<br>
- IsBin = llvm::sys::path::filename(TestPath).equals_lower("bin");<br>
+ IsBin = llvm::sys::path::filename(TestPath).equals_insensitive("bin");<br>
}<br>
if (IsBin) {<br>
llvm::StringRef ParentPath = llvm::sys::path::parent_path(TestPath);<br>
llvm::StringRef ParentFilename = llvm::sys::path::filename(ParentPath);<br>
- if (ParentFilename.equals_lower("VC")) {<br>
+ if (ParentFilename.equals_insensitive("VC")) {<br>
Path = std::string(ParentPath);<br>
VSLayout = MSVCToolChain::ToolsetLayout::OlderVS;<br>
return true;<br>
}<br>
- if (ParentFilename.equals_lower("x86ret") ||<br>
- ParentFilename.equals_lower("x86chk") ||<br>
- ParentFilename.equals_lower("amd64ret") ||<br>
- ParentFilename.equals_lower("amd64chk")) {<br>
+ if (ParentFilename.equals_insensitive("x86ret") ||<br>
+ ParentFilename.equals_insensitive("x86chk") ||<br>
+ ParentFilename.equals_insensitive("amd64ret") ||<br>
+ ParentFilename.equals_insensitive("amd64chk")) {<br>
Path = std::string(ParentPath);<br>
VSLayout = MSVCToolChain::ToolsetLayout::DevDivInternal;<br>
return true;<br>
@@ -217,7 +218,7 @@ findVCToolChainViaEnvironment(llvm::vfs::FileSystem &VFS, std::string &Path,<br>
for (llvm::StringRef Prefix : ExpectedPrefixes) {<br>
if (It == End)<br>
goto NotAToolChain;<br>
- if (!It->startswith_lower(Prefix))<br>
+ if (!It->startswith_insensitive(Prefix))<br>
goto NotAToolChain;<br>
++It;<br>
}<br>
@@ -507,14 +508,15 @@ void visualstudio::Linker::ConstructJob(Compilation &C, const JobAction &JA,<br>
// Control Flow Guard checks<br>
if (Arg *A = Args.getLastArg(options::OPT__SLASH_guard)) {<br>
StringRef GuardArgs = A->getValue();<br>
- if (GuardArgs.equals_lower("cf") || GuardArgs.equals_lower("cf,nochecks")) {<br>
+ if (GuardArgs.equals_insensitive("cf") ||<br>
+ GuardArgs.equals_insensitive("cf,nochecks")) {<br>
// MSVC doesn't yet support the "nochecks" modifier.<br>
CmdArgs.push_back("-guard:cf");<br>
- } else if (GuardArgs.equals_lower("cf-")) {<br>
+ } else if (GuardArgs.equals_insensitive("cf-")) {<br>
CmdArgs.push_back("-guard:cf-");<br>
- } else if (GuardArgs.equals_lower("ehcont")) {<br>
+ } else if (GuardArgs.equals_insensitive("ehcont")) {<br>
CmdArgs.push_back("-guard:ehcont");<br>
- } else if (GuardArgs.equals_lower("ehcont-")) {<br>
+ } else if (GuardArgs.equals_insensitive("ehcont-")) {<br>
CmdArgs.push_back("-guard:ehcont-");<br>
}<br>
}<br>
@@ -584,10 +586,10 @@ void visualstudio::Linker::ConstructJob(Compilation &C, const JobAction &JA,<br>
= Args.getLastArgValue(options::OPT_fuse_ld_EQ, CLANG_DEFAULT_LINKER);<br>
if (Linker.empty())<br>
Linker = "link";<br>
- if (Linker.equals_lower("lld"))<br>
+ if (Linker.equals_insensitive("lld"))<br>
Linker = "lld-link";<br>
<br>
- if (Linker.equals_lower("link")) {<br>
+ if (Linker.equals_insensitive("link")) {<br>
// If we're using the MSVC linker, it's not sufficient to just use link<br>
// from the program PATH, because other environments like GnuWin32 install<br>
// their own link.exe which may come first.<br>
@@ -646,7 +648,7 @@ void visualstudio::Linker::ConstructJob(Compilation &C, const JobAction &JA,<br>
// find it.<br>
for (const char *Cursor = EnvBlock.data(); *Cursor != '\0';) {<br>
llvm::StringRef EnvVar(Cursor);<br>
- if (EnvVar.startswith_lower("path=")) {<br>
+ if (EnvVar.startswith_insensitive("path=")) {<br>
using SubDirectoryType = toolchains::MSVCToolChain::SubDirectoryType;<br>
constexpr size_t PrefixLen = 5; // strlen("path=")<br>
Environment.push_back(Args.MakeArgString(<br>
<br>
diff --git a/clang/lib/Driver/ToolChains/MinGW.cpp b/clang/lib/Driver/ToolChains/MinGW.cpp<br>
index 4ebcdf6a94455..467a5479bfb74 100644<br>
--- a/clang/lib/Driver/ToolChains/MinGW.cpp<br>
+++ b/clang/lib/Driver/ToolChains/MinGW.cpp<br>
@@ -427,7 +427,7 @@ toolchains::MinGW::MinGW(const Driver &D, const llvm::Triple &Triple,<br>
<br>
NativeLLVMSupport =<br>
Args.getLastArgValue(options::OPT_fuse_ld_EQ, CLANG_DEFAULT_LINKER)<br>
- .equals_lower("lld");<br>
+ .equals_insensitive("lld");<br>
}<br>
<br>
bool toolchains::MinGW::IsIntegratedAssemblerDefault() const { return true; }<br>
<br>
diff --git a/clang/lib/Format/Format.cpp b/clang/lib/Format/Format.cpp<br>
index 71b7820c2b1c6..e95ec55d0805d 100644<br>
--- a/clang/lib/Format/Format.cpp<br>
+++ b/clang/lib/Format/Format.cpp<br>
@@ -1441,23 +1441,23 @@ FormatStyle getNoStyle() {<br>
<br>
bool getPredefinedStyle(StringRef Name, FormatStyle::LanguageKind Language,<br>
FormatStyle *Style) {<br>
- if (Name.equals_lower("llvm")) {<br>
+ if (Name.equals_insensitive("llvm")) {<br>
*Style = getLLVMStyle(Language);<br>
- } else if (Name.equals_lower("chromium")) {<br>
+ } else if (Name.equals_insensitive("chromium")) {<br>
*Style = getChromiumStyle(Language);<br>
- } else if (Name.equals_lower("mozilla")) {<br>
+ } else if (Name.equals_insensitive("mozilla")) {<br>
*Style = getMozillaStyle();<br>
- } else if (Name.equals_lower("google")) {<br>
+ } else if (Name.equals_insensitive("google")) {<br>
*Style = getGoogleStyle(Language);<br>
- } else if (Name.equals_lower("webkit")) {<br>
+ } else if (Name.equals_insensitive("webkit")) {<br>
*Style = getWebKitStyle();<br>
- } else if (Name.equals_lower("gnu")) {<br>
+ } else if (Name.equals_insensitive("gnu")) {<br>
*Style = getGNUStyle();<br>
- } else if (Name.equals_lower("microsoft")) {<br>
+ } else if (Name.equals_insensitive("microsoft")) {<br>
*Style = getMicrosoftStyle(Language);<br>
- } else if (Name.equals_lower("none")) {<br>
+ } else if (Name.equals_insensitive("none")) {<br>
*Style = getNoStyle();<br>
- } else if (Name.equals_lower("inheritparentconfig")) {<br>
+ } else if (Name.equals_insensitive("inheritparentconfig")) {<br>
Style->InheritsParentConfig = true;<br>
} else {<br>
return false;<br>
@@ -2973,22 +2973,23 @@ const char *StyleOptionHelpDescription =<br>
static FormatStyle::LanguageKind getLanguageByFileName(StringRef FileName) {<br>
if (FileName.endswith(".java"))<br>
return FormatStyle::LK_Java;<br>
- if (FileName.endswith_lower(".js") || FileName.endswith_lower(".mjs") ||<br>
- FileName.endswith_lower(".ts"))<br>
+ if (FileName.endswith_insensitive(".js") ||<br>
+ FileName.endswith_insensitive(".mjs") ||<br>
+ FileName.endswith_insensitive(".ts"))<br>
return FormatStyle::LK_JavaScript; // (module) JavaScript or TypeScript.<br>
if (FileName.endswith(".m") || FileName.endswith(".mm"))<br>
return FormatStyle::LK_ObjC;<br>
- if (FileName.endswith_lower(".proto") ||<br>
- FileName.endswith_lower(".protodevel"))<br>
+ if (FileName.endswith_insensitive(".proto") ||<br>
+ FileName.endswith_insensitive(".protodevel"))<br>
return FormatStyle::LK_Proto;<br>
- if (FileName.endswith_lower(".textpb") ||<br>
- FileName.endswith_lower(".pb.txt") ||<br>
- FileName.endswith_lower(".textproto") ||<br>
- FileName.endswith_lower(".asciipb"))<br>
+ if (FileName.endswith_insensitive(".textpb") ||<br>
+ FileName.endswith_insensitive(".pb.txt") ||<br>
+ FileName.endswith_insensitive(".textproto") ||<br>
+ FileName.endswith_insensitive(".asciipb"))<br>
return FormatStyle::LK_TextProto;<br>
- if (FileName.endswith_lower(".td"))<br>
+ if (FileName.endswith_insensitive(".td"))<br>
return FormatStyle::LK_TableGen;<br>
- if (FileName.endswith_lower(".cs"))<br>
+ if (FileName.endswith_insensitive(".cs"))<br>
return FormatStyle::LK_CSharp;<br>
return FormatStyle::LK_Cpp;<br>
}<br>
@@ -3048,7 +3049,7 @@ llvm::Expected<FormatStyle> getStyle(StringRef StyleName, StringRef FileName,<br>
// If the style inherits the parent configuration it is a command line<br>
// configuration, which wants to inherit, so we have to skip the check of the<br>
// StyleName.<br>
- if (!Style.InheritsParentConfig && !StyleName.equals_lower("file")) {<br>
+ if (!Style.InheritsParentConfig && !StyleName.equals_insensitive("file")) {<br>
if (!getPredefinedStyle(StyleName, Style.Language, &Style))<br>
return make_string_error("Invalid value for -style");<br>
if (!Style.InheritsParentConfig)<br>
<br>
diff --git a/clang/lib/Format/SortJavaScriptImports.cpp b/clang/lib/Format/SortJavaScriptImports.cpp<br>
index 901204c297f9d..a5e3ce69207bd 100644<br>
--- a/clang/lib/Format/SortJavaScriptImports.cpp<br>
+++ b/clang/lib/Format/SortJavaScriptImports.cpp<br>
@@ -113,7 +113,7 @@ bool operator<(const JsModuleReference &LHS, const JsModuleReference &RHS) {<br>
// Empty URLs sort *last* (for export {...};).<br>
if (LHS.URL.empty() != RHS.URL.empty())<br>
return LHS.URL.empty() < RHS.URL.empty();<br>
- if (int Res = LHS.URL.compare_lower(RHS.URL))<br>
+ if (int Res = LHS.URL.compare_insensitive(RHS.URL))<br>
return Res < 0;<br>
// '*' imports (with prefix) sort before {a, b, ...} imports.<br>
if (LHS.Prefix.empty() != RHS.Prefix.empty())<br>
@@ -327,7 +327,7 @@ class JavaScriptImportSorter : public TokenAnalyzer {<br>
SmallVector<JsImportedSymbol, 1> Symbols = Reference.Symbols;<br>
llvm::stable_sort(<br>
Symbols, [&](const JsImportedSymbol &LHS, const JsImportedSymbol &RHS) {<br>
- return LHS.Symbol.compare_lower(RHS.Symbol) < 0;<br>
+ return LHS.Symbol.compare_insensitive(RHS.Symbol) < 0;<br>
});<br>
if (!Reference.SymbolsMerged && Symbols == Reference.Symbols) {<br>
// Symbols didn't change, just emit the entire module reference.<br>
<br>
diff --git a/clang/lib/Format/UsingDeclarationsSorter.cpp b/clang/lib/Format/UsingDeclarationsSorter.cpp<br>
index b6559db61d0cb..5608a5a759537 100644<br>
--- a/clang/lib/Format/UsingDeclarationsSorter.cpp<br>
+++ b/clang/lib/Format/UsingDeclarationsSorter.cpp<br>
@@ -48,7 +48,7 @@ int compareLabels(StringRef A, StringRef B) {<br>
return -1;<br>
<br>
// Two names within a group compare case-insensitively.<br>
- return NamesA[I].compare_lower(NamesB[I]);<br>
+ return NamesA[I].compare_insensitive(NamesB[I]);<br>
}<br>
<br>
// I is the last index of NamesB and NamesB[I] is a non-namespace name.<br>
@@ -57,7 +57,7 @@ int compareLabels(StringRef A, StringRef B) {<br>
return 1;<br>
<br>
// Two namespaces names within a group compare case-insensitively.<br>
- int C = NamesA[I].compare_lower(NamesB[I]);<br>
+ int C = NamesA[I].compare_insensitive(NamesB[I]);<br>
if (C != 0)<br>
return C;<br>
}<br>
<br>
diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp<br>
index c1b7b027b3b4d..126e9c7a9cd5e 100644<br>
--- a/clang/lib/Frontend/CompilerInvocation.cpp<br>
+++ b/clang/lib/Frontend/CompilerInvocation.cpp<br>
@@ -3986,13 +3986,13 @@ bool CompilerInvocation::ParseLangArgs(LangOptions &Opts, ArgList &Args,<br>
if (Arg *A = Args.getLastArg(OPT_msign_return_address_EQ)) {<br>
StringRef SignScope = A->getValue();<br>
<br>
- if (SignScope.equals_lower("none"))<br>
+ if (SignScope.equals_insensitive("none"))<br>
Opts.setSignReturnAddressScope(<br>
LangOptions::SignReturnAddressScopeKind::None);<br>
- else if (SignScope.equals_lower("all"))<br>
+ else if (SignScope.equals_insensitive("all"))<br>
Opts.setSignReturnAddressScope(<br>
LangOptions::SignReturnAddressScopeKind::All);<br>
- else if (SignScope.equals_lower("non-leaf"))<br>
+ else if (SignScope.equals_insensitive("non-leaf"))<br>
Opts.setSignReturnAddressScope(<br>
LangOptions::SignReturnAddressScopeKind::NonLeaf);<br>
else<br>
@@ -4002,10 +4002,10 @@ bool CompilerInvocation::ParseLangArgs(LangOptions &Opts, ArgList &Args,<br>
if (Arg *A = Args.getLastArg(OPT_msign_return_address_key_EQ)) {<br>
StringRef SignKey = A->getValue();<br>
if (!SignScope.empty() && !SignKey.empty()) {<br>
- if (SignKey.equals_lower("a_key"))<br>
+ if (SignKey.equals_insensitive("a_key"))<br>
Opts.setSignReturnAddressKey(<br>
LangOptions::SignReturnAddressKeyKind::AKey);<br>
- else if (SignKey.equals_lower("b_key"))<br>
+ else if (SignKey.equals_insensitive("b_key"))<br>
Opts.setSignReturnAddressKey(<br>
LangOptions::SignReturnAddressKeyKind::BKey);<br>
else<br>
<br>
diff --git a/clang/lib/Lex/HeaderMap.cpp b/clang/lib/Lex/HeaderMap.cpp<br>
index 4b60cfa7b52dd..ae5e6b221953f 100644<br>
--- a/clang/lib/Lex/HeaderMap.cpp<br>
+++ b/clang/lib/Lex/HeaderMap.cpp<br>
@@ -224,7 +224,7 @@ StringRef HeaderMapImpl::lookupFilename(StringRef Filename,<br>
Optional<StringRef> Key = getString(B.Key);<br>
if (LLVM_UNLIKELY(!Key))<br>
continue;<br>
- if (!Filename.equals_lower(*Key))<br>
+ if (!Filename.equals_insensitive(*Key))<br>
continue;<br>
<br>
// If so, we have a match in the hash table. Construct the destination<br>
<br>
diff --git a/clang/lib/Lex/PPDirectives.cpp b/clang/lib/Lex/PPDirectives.cpp<br>
index 87741b0a024a2..d0e4962a37479 100644<br>
--- a/clang/lib/Lex/PPDirectives.cpp<br>
+++ b/clang/lib/Lex/PPDirectives.cpp<br>
@@ -196,7 +196,7 @@ static MacroDiag shouldWarnOnMacroUndef(Preprocessor &PP, IdentifierInfo *II) {<br>
static bool warnByDefaultOnWrongCase(StringRef Include) {<br>
// If the first component of the path is "boost", treat this like a standard header<br>
// for the purposes of diagnostics.<br>
- if (::llvm::sys::path::begin(Include)->equals_lower("boost"))<br>
+ if (::llvm::sys::path::begin(Include)->equals_insensitive("boost"))<br>
return true;<br>
<br>
// "condition_variable" is the longest standard header name at 18 characters.<br>
@@ -1723,7 +1723,8 @@ static bool trySimplifyPath(SmallVectorImpl<StringRef> &Components,<br>
// If these path components <br>
diff er by more than just case, then we<br>
// may be looking at symlinked paths. Bail on this diagnostic to avoid<br>
// noisy false positives.<br>
- SuggestReplacement = RealPathComponentIter->equals_lower(Component);<br>
+ SuggestReplacement =<br>
+ RealPathComponentIter->equals_insensitive(Component);<br>
if (!SuggestReplacement)<br>
break;<br>
Component = *RealPathComponentIter;<br>
<br>
diff --git a/clang/lib/Lex/PPMacroExpansion.cpp b/clang/lib/Lex/PPMacroExpansion.cpp<br>
index 74ef9df592dbe..8728ac9e2166e 100644<br>
--- a/clang/lib/Lex/PPMacroExpansion.cpp<br>
+++ b/clang/lib/Lex/PPMacroExpansion.cpp<br>
@@ -1430,7 +1430,7 @@ static bool isTargetVendor(const TargetInfo &TI, const IdentifierInfo *II) {<br>
StringRef VendorName = TI.getTriple().getVendorName();<br>
if (VendorName.empty())<br>
VendorName = "unknown";<br>
- return VendorName.equals_lower(II->getName());<br>
+ return VendorName.equals_insensitive(II->getName());<br>
}<br>
<br>
/// Implements the __is_target_os builtin macro.<br>
<br>
diff --git a/clang/lib/Sema/CodeCompleteConsumer.cpp b/clang/lib/Sema/CodeCompleteConsumer.cpp<br>
index 678a09ba10034..3ab2a18f5e8d5 100644<br>
--- a/clang/lib/Sema/CodeCompleteConsumer.cpp<br>
+++ b/clang/lib/Sema/CodeCompleteConsumer.cpp<br>
@@ -755,7 +755,7 @@ bool clang::operator<(const CodeCompletionResult &X,<br>
std::string XSaved, YSaved;<br>
StringRef XStr = X.getOrderedName(XSaved);<br>
StringRef YStr = Y.getOrderedName(YSaved);<br>
- int cmp = XStr.compare_lower(YStr);<br>
+ int cmp = XStr.compare_insensitive(YStr);<br>
if (cmp)<br>
return cmp < 0;<br>
<br>
<br>
diff --git a/clang/lib/Sema/SemaChecking.cpp b/clang/lib/Sema/SemaChecking.cpp<br>
index 3b95a1344075a..561c83eddce2f 100644<br>
--- a/clang/lib/Sema/SemaChecking.cpp<br>
+++ b/clang/lib/Sema/SemaChecking.cpp<br>
@@ -6971,18 +6971,18 @@ bool Sema::SemaBuiltinARMSpecialReg(unsigned BuiltinID, CallExpr *TheCall,<br>
<br>
bool ValidString = true;<br>
if (IsARMBuiltin) {<br>
- ValidString &= Fields[0].startswith_lower("cp") ||<br>
- Fields[0].startswith_lower("p");<br>
+ ValidString &= Fields[0].startswith_insensitive("cp") ||<br>
+ Fields[0].startswith_insensitive("p");<br>
if (ValidString)<br>
- Fields[0] =<br>
- Fields[0].drop_front(Fields[0].startswith_lower("cp") ? 2 : 1);<br>
+ Fields[0] = Fields[0].drop_front(<br>
+ Fields[0].startswith_insensitive("cp") ? 2 : 1);<br>
<br>
- ValidString &= Fields[2].startswith_lower("c");<br>
+ ValidString &= Fields[2].startswith_insensitive("c");<br>
if (ValidString)<br>
Fields[2] = Fields[2].drop_front(1);<br>
<br>
if (FiveFields) {<br>
- ValidString &= Fields[3].startswith_lower("c");<br>
+ ValidString &= Fields[3].startswith_insensitive("c");<br>
if (ValidString)<br>
Fields[3] = Fields[3].drop_front(1);<br>
}<br>
<br>
diff --git a/clang/lib/Sema/SemaCodeComplete.cpp b/clang/lib/Sema/SemaCodeComplete.cpp<br>
index 1ab9c50709a9d..e03b671ae61e7 100644<br>
--- a/clang/lib/Sema/SemaCodeComplete.cpp<br>
+++ b/clang/lib/Sema/SemaCodeComplete.cpp<br>
@@ -9491,10 +9491,10 @@ void Sema::CodeCompleteIncludedFile(llvm::StringRef Dir, bool Angled) {<br>
// Only files that really look like headers. (Except in system dirs).<br>
if (!IsSystem) {<br>
// Header extensions from Types.def, which we can't depend on here.<br>
- if (!(Filename.endswith_lower(".h") ||<br>
- Filename.endswith_lower(".hh") ||<br>
- Filename.endswith_lower(".hpp") ||<br>
- Filename.endswith_lower(".inc")))<br>
+ if (!(Filename.endswith_insensitive(".h") ||<br>
+ Filename.endswith_insensitive(".hh") ||<br>
+ Filename.endswith_insensitive(".hpp") ||<br>
+ Filename.endswith_insensitive(".inc")))<br>
break;<br>
}<br>
AddCompletion(Filename, /*IsDirectory=*/false);<br>
<br>
diff --git a/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp<br>
index 4e49dbc2facce..69b90be9aa7e6 100644<br>
--- a/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp<br>
+++ b/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp<br>
@@ -2039,7 +2039,7 @@ void CStringChecker::evalStrcmpCommon(CheckerContext &C, const CallExpr *CE,<br>
RightStrRef = RightStrRef.substr(0, s2Term);<br>
<br>
// Use StringRef's comparison methods to compute the actual result.<br>
- int compareRes = IgnoreCase ? LeftStrRef.compare_lower(RightStrRef)<br>
+ int compareRes = IgnoreCase ? LeftStrRef.compare_insensitive(RightStrRef)<br>
: LeftStrRef.compare(RightStrRef);<br>
<br>
// The strcmp function returns an integer greater than, equal to, or less<br>
<br>
diff --git a/clang/lib/StaticAnalyzer/Checkers/ContainerModeling.cpp b/clang/lib/StaticAnalyzer/Checkers/ContainerModeling.cpp<br>
index 73c6517fd0ebf..1a7f0d5ab74c2 100644<br>
--- a/clang/lib/StaticAnalyzer/Checkers/ContainerModeling.cpp<br>
+++ b/clang/lib/StaticAnalyzer/Checkers/ContainerModeling.cpp<br>
@@ -763,14 +763,14 @@ bool isBeginCall(const FunctionDecl *Func) {<br>
const auto *IdInfo = Func->getIdentifier();<br>
if (!IdInfo)<br>
return false;<br>
- return IdInfo->getName().endswith_lower("begin");<br>
+ return IdInfo->getName().endswith_insensitive("begin");<br>
}<br>
<br>
bool isEndCall(const FunctionDecl *Func) {<br>
const auto *IdInfo = Func->getIdentifier();<br>
if (!IdInfo)<br>
return false;<br>
- return IdInfo->getName().endswith_lower("end");<br>
+ return IdInfo->getName().endswith_insensitive("end");<br>
}<br>
<br>
const CXXRecordDecl *getCXXRecordDecl(ProgramStateRef State,<br>
<br>
diff --git a/clang/lib/StaticAnalyzer/Checkers/GCDAntipatternChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/GCDAntipatternChecker.cpp<br>
index 63fbe75fd4983..8e02ef74c6686 100644<br>
--- a/clang/lib/StaticAnalyzer/Checkers/GCDAntipatternChecker.cpp<br>
+++ b/clang/lib/StaticAnalyzer/Checkers/GCDAntipatternChecker.cpp<br>
@@ -80,7 +80,7 @@ static bool isTest(const Decl *D) {<br>
if (const auto *CD = dyn_cast<ObjCContainerDecl>(OD->getParent())) {<br>
std::string ContainerName = CD->getNameAsString();<br>
StringRef CN(ContainerName);<br>
- if (CN.contains_lower("test") || CN.contains_lower("mock"))<br>
+ if (CN.contains_insensitive("test") || CN.contains_insensitive("mock"))<br>
return true;<br>
}<br>
}<br>
<br>
diff --git a/clang/lib/StaticAnalyzer/Checkers/Iterator.cpp b/clang/lib/StaticAnalyzer/Checkers/Iterator.cpp<br>
index ac0f24603dd90..4961901499914 100644<br>
--- a/clang/lib/StaticAnalyzer/Checkers/Iterator.cpp<br>
+++ b/clang/lib/StaticAnalyzer/Checkers/Iterator.cpp<br>
@@ -29,8 +29,8 @@ bool isIterator(const CXXRecordDecl *CRD) {<br>
return false;<br>
<br>
const auto Name = CRD->getName();<br>
- if (!(Name.endswith_lower("iterator") || Name.endswith_lower("iter") ||<br>
- Name.endswith_lower("it")))<br>
+ if (!(Name.endswith_insensitive("iterator") ||<br>
+ Name.endswith_insensitive("iter") || Name.endswith_insensitive("it")))<br>
return false;<br>
<br>
bool HasCopyCtor = false, HasCopyAssign = true, HasDtor = false,<br>
<br>
diff --git a/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp<br>
index e0f0dc35e7a71..a6470da09c458 100644<br>
--- a/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp<br>
+++ b/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp<br>
@@ -3145,9 +3145,10 @@ static SymbolRef findFailedReallocSymbol(ProgramStateRef currState,<br>
static bool isReferenceCountingPointerDestructor(const CXXDestructorDecl *DD) {<br>
if (const IdentifierInfo *II = DD->getParent()->getIdentifier()) {<br>
StringRef N = II->getName();<br>
- if (N.contains_lower("ptr") || N.contains_lower("pointer")) {<br>
- if (N.contains_lower("ref") || N.contains_lower("cnt") ||<br>
- N.contains_lower("intrusive") || N.contains_lower("shared")) {<br>
+ if (N.contains_insensitive("ptr") || N.contains_insensitive("pointer")) {<br>
+ if (N.contains_insensitive("ref") || N.contains_insensitive("cnt") ||<br>
+ N.contains_insensitive("intrusive") ||<br>
+ N.contains_insensitive("shared")) {<br>
return true;<br>
}<br>
}<br>
<br>
diff --git a/clang/lib/Tooling/Inclusions/HeaderIncludes.cpp b/clang/lib/Tooling/Inclusions/HeaderIncludes.cpp<br>
index d1f984632660f..fbceb26c39c7c 100644<br>
--- a/clang/lib/Tooling/Inclusions/HeaderIncludes.cpp<br>
+++ b/clang/lib/Tooling/Inclusions/HeaderIncludes.cpp<br>
@@ -252,9 +252,9 @@ bool IncludeCategoryManager::isMainHeader(StringRef IncludeName) const {<br>
// 1) foo.h => bar.cc<br>
// 2) foo.proto.h => foo.cc<br>
StringRef Matching;<br>
- if (MatchingFileStem.startswith_lower(HeaderStem))<br>
+ if (MatchingFileStem.startswith_insensitive(HeaderStem))<br>
Matching = MatchingFileStem; // example 1), 2)<br>
- else if (FileStem.equals_lower(HeaderStem))<br>
+ else if (FileStem.equals_insensitive(HeaderStem))<br>
Matching = FileStem; // example 3)<br>
if (!Matching.empty()) {<br>
llvm::Regex MainIncludeRegex(HeaderStem.str() + Style.IncludeIsMainRegex,<br>
<br>
diff --git a/clang/lib/Tooling/InterpolatingCompilationDatabase.cpp b/clang/lib/Tooling/InterpolatingCompilationDatabase.cpp<br>
index 3b65504b98ea3..650e510fb68ff 100644<br>
--- a/clang/lib/Tooling/InterpolatingCompilationDatabase.cpp<br>
+++ b/clang/lib/Tooling/InterpolatingCompilationDatabase.cpp<br>
@@ -256,7 +256,7 @@ struct TransferableCommand {<br>
<br>
// Otherwise just check the clang executable file name.<br>
return !CmdLine.empty() &&<br>
- llvm::sys::path::stem(CmdLine.front()).endswith_lower("cl");<br>
+ llvm::sys::path::stem(CmdLine.front()).endswith_insensitive("cl");<br>
}<br>
<br>
// Map the language from the --std flag to that of the -x flag.<br>
<br>
diff --git a/clang/tools/clang-refactor/TestSupport.cpp b/clang/tools/clang-refactor/TestSupport.cpp<br>
index 34499b93c97ea..eb880889749f5 100644<br>
--- a/clang/tools/clang-refactor/TestSupport.cpp<br>
+++ b/clang/tools/clang-refactor/TestSupport.cpp<br>
@@ -328,8 +328,8 @@ findTestSelectionRanges(StringRef Filename) {<br>
// Try to detect mistyped 'range:' comments to ensure tests don't miss<br>
// anything.<br>
auto DetectMistypedCommand = [&]() -> bool {<br>
- if (Comment.contains_lower("range") && Comment.contains("=") &&<br>
- !Comment.contains_lower("run") && !Comment.contains("CHECK")) {<br>
+ if (Comment.contains_insensitive("range") && Comment.contains("=") &&<br>
+ !Comment.contains_insensitive("run") && !Comment.contains("CHECK")) {<br>
llvm::errs() << "error: suspicious comment '" << Comment<br>
<< "' that "<br>
"resembles the range command found\n";<br>
<br>
diff --git a/clang/tools/clang-scan-deps/ClangScanDeps.cpp b/clang/tools/clang-scan-deps/ClangScanDeps.cpp<br>
index 49c4757686623..b6533361c5296 100644<br>
--- a/clang/tools/clang-scan-deps/ClangScanDeps.cpp<br>
+++ b/clang/tools/clang-scan-deps/ClangScanDeps.cpp<br>
@@ -465,7 +465,7 @@ int main(int argc, const char **argv) {<br>
auto FlagsEnd = llvm::find(Args, "--");<br>
if (FlagsEnd != Args.begin()) {<br>
ClangCLMode =<br>
- llvm::sys::path::stem(Args[0]).contains_lower("clang-cl") ||<br>
+ llvm::sys::path::stem(Args[0]).contains_insensitive("clang-cl") ||<br>
llvm::is_contained(Args, "--driver-mode=cl");<br>
<br>
// Reverse scan, starting at the end or at the element before "--".<br>
<br>
diff --git a/clang/tools/driver/driver.cpp b/clang/tools/driver/driver.cpp<br>
index ee3ffe3012d1e..9e3f51db21a9d 100644<br>
--- a/clang/tools/driver/driver.cpp<br>
+++ b/clang/tools/driver/driver.cpp<br>
@@ -273,7 +273,7 @@ static void FixupDiagPrefixExeName(TextDiagnosticPrinter *DiagClient,<br>
// If the clang binary happens to be named cl.exe for compatibility reasons,<br>
// use clang-cl.exe as the prefix to avoid confusion between clang and MSVC.<br>
StringRef ExeBasename(llvm::sys::path::stem(Path));<br>
- if (ExeBasename.equals_lower("cl"))<br>
+ if (ExeBasename.equals_insensitive("cl"))<br>
ExeBasename = "clang-cl";<br>
DiagClient->setPrefix(std::string(ExeBasename));<br>
}<br>
<br>
diff --git a/clang/tools/libclang/CIndexCodeCompletion.cpp b/clang/tools/libclang/CIndexCodeCompletion.cpp<br>
index 6685c892749ea..68f35c41efd74 100644<br>
--- a/clang/tools/libclang/CIndexCodeCompletion.cpp<br>
+++ b/clang/tools/libclang/CIndexCodeCompletion.cpp<br>
@@ -1026,7 +1026,7 @@ namespace {<br>
if (XText.empty() || YText.empty())<br>
return !XText.empty();<br>
<br>
- int result = XText.compare_lower(YText);<br>
+ int result = XText.compare_insensitive(YText);<br>
if (result < 0)<br>
return true;<br>
if (result > 0)<br>
<br>
diff --git a/clang/unittests/Tooling/CompilationDatabaseTest.cpp b/clang/unittests/Tooling/CompilationDatabaseTest.cpp<br>
index 8ff3387d3c185..9a04de32c852d 100644<br>
--- a/clang/unittests/Tooling/CompilationDatabaseTest.cpp<br>
+++ b/clang/unittests/Tooling/CompilationDatabaseTest.cpp<br>
@@ -210,7 +210,7 @@ TEST(JSONCompilationDatabase, ArgumentsPreferredOverCommand) {<br>
struct FakeComparator : public PathComparator {<br>
~FakeComparator() override {}<br>
bool equivalent(StringRef FileA, StringRef FileB) const override {<br>
- return FileA.equals_lower(FileB);<br>
+ return FileA.equals_insensitive(FileB);<br>
}<br>
};<br>
<br>
<br>
<br>
<br>
_______________________________________________<br>
cfe-commits mailing list<br>
<a href="mailto:cfe-commits@lists.llvm.org" target="_blank">cfe-commits@lists.llvm.org</a><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits</a><br>
</blockquote></div>