Make llvm::StringRef to std::string conversions explicit.
This is how it should've been and brings it more in line with
std::string_view. There should be no functional change here.
This is mostly mechanical from a custom clang-tidy check, with a lot of
manual fixups. It uncovers a lot of minor inefficiencies.
This doesn't actually modify StringRef yet, I'll do that in a follow-up.
diff --git a/lldb/utils/TableGen/LLDBOptionDefEmitter.cpp b/lldb/utils/TableGen/LLDBOptionDefEmitter.cpp
index 6e73d0c5..ccf4827 100644
--- a/lldb/utils/TableGen/LLDBOptionDefEmitter.cpp
+++ b/lldb/utils/TableGen/LLDBOptionDefEmitter.cpp
@@ -55,18 +55,18 @@
Required = Option->getValue("Required");
// Add the full and short name for this option.
- FullName = Option->getValueAsString("FullName");
- ShortName = Option->getValueAsString("ShortName");
+ FullName = std::string(Option->getValueAsString("FullName"));
+ ShortName = std::string(Option->getValueAsString("ShortName"));
if (auto A = Option->getValue("ArgType"))
ArgType = A->getValue()->getAsUnquotedString();
OptionalArg = Option->getValue("OptionalArg") != nullptr;
if (Option->getValue("Validator"))
- Validator = Option->getValueAsString("Validator");
+ Validator = std::string(Option->getValueAsString("Validator"));
if (Option->getValue("ArgEnum"))
- ArgEnum = Option->getValueAsString("ArgEnum");
+ ArgEnum = std::string(Option->getValueAsString("ArgEnum"));
if (Option->getValue("Completions"))
Completions = Option->getValueAsListOfStrings("Completions");