[clang] d44edfc - [clang][NFC] Use SmallString instead of SmallVector<char
Nathan James via cfe-commits
cfe-commits at lists.llvm.org
Tue Nov 17 05:03:14 PST 2020
Author: Nathan James
Date: 2020-11-17T13:02:58Z
New Revision: d44edfc1094ceece13e30e36dcc4a51b6eeebdaa
URL: https://github.com/llvm/llvm-project/commit/d44edfc1094ceece13e30e36dcc4a51b6eeebdaa
DIFF: https://github.com/llvm/llvm-project/commit/d44edfc1094ceece13e30e36dcc4a51b6eeebdaa.diff
LOG: [clang][NFC] Use SmallString instead of SmallVector<char
Simplifies code in some places and is more explicit about what is being used.
No additional includes were added here so no impact on compile time.
Added:
Modified:
clang/lib/AST/Interp/State.cpp
clang/lib/AST/JSONNodeDumper.cpp
clang/lib/Basic/Diagnostic.cpp
clang/lib/CrossTU/CrossTranslationUnit.cpp
clang/lib/Sema/Sema.cpp
clang/lib/Sema/SemaTemplateInstantiate.cpp
clang/lib/Serialization/ASTWriter.cpp
clang/lib/Serialization/GlobalModuleIndex.cpp
clang/lib/StaticAnalyzer/Core/CheckerContext.cpp
clang/lib/Tooling/Refactoring/Rename/USRFinder.cpp
Removed:
################################################################################
diff --git a/clang/lib/AST/Interp/State.cpp b/clang/lib/AST/Interp/State.cpp
index 692cc2e8d69b..56774f88fb45 100644
--- a/clang/lib/AST/Interp/State.cpp
+++ b/clang/lib/AST/Interp/State.cpp
@@ -150,7 +150,7 @@ void State::addCallStack(unsigned Limit) {
}
}
- SmallVector<char, 128> Buffer;
+ SmallString<128> Buffer;
llvm::raw_svector_ostream Out(Buffer);
F->describe(Out);
addDiag(CallLocation, diag::note_constexpr_call_here) << Out.str();
diff --git a/clang/lib/AST/JSONNodeDumper.cpp b/clang/lib/AST/JSONNodeDumper.cpp
index a9136a903b98..7b99546bbe2d 100644
--- a/clang/lib/AST/JSONNodeDumper.cpp
+++ b/clang/lib/AST/JSONNodeDumper.cpp
@@ -1418,7 +1418,7 @@ void JSONNodeDumper::VisitFixedPointLiteral(const FixedPointLiteral *FPL) {
JOS.attribute("value", FPL->getValueAsString(/*Radix=*/10));
}
void JSONNodeDumper::VisitFloatingLiteral(const FloatingLiteral *FL) {
- llvm::SmallVector<char, 16> Buffer;
+ llvm::SmallString<16> Buffer;
FL->getValue().toString(Buffer);
JOS.attribute("value", Buffer);
}
diff --git a/clang/lib/Basic/Diagnostic.cpp b/clang/lib/Basic/Diagnostic.cpp
index 03ceca1262af..30a4c51b134b 100644
--- a/clang/lib/Basic/Diagnostic.cpp
+++ b/clang/lib/Basic/Diagnostic.cpp
@@ -808,7 +808,7 @@ FormatDiagnostic(const char *DiagStr, const char *DiagEnd,
/// QualTypeVals - Pass a vector of arrays so that QualType names can be
/// compared to see if more information is needed to be printed.
SmallVector<intptr_t, 2> QualTypeVals;
- SmallVector<char, 64> Tree;
+ SmallString<64> Tree;
for (unsigned i = 0, e = getNumArgs(); i < e; ++i)
if (getArgKind(i) == DiagnosticsEngine::ak_qualtype)
diff --git a/clang/lib/CrossTU/CrossTranslationUnit.cpp b/clang/lib/CrossTU/CrossTranslationUnit.cpp
index 80465c41d151..45a2a91616b8 100644
--- a/clang/lib/CrossTU/CrossTranslationUnit.cpp
+++ b/clang/lib/CrossTU/CrossTranslationUnit.cpp
@@ -162,8 +162,7 @@ parseCrossTUIndex(StringRef IndexPath) {
StringRef LookupName = LineRef.substr(0, Delimiter);
// Store paths with posix-style directory separator.
- SmallVector<char, 32> FilePath;
- llvm::Twine{LineRef.substr(Delimiter + 1)}.toVector(FilePath);
+ SmallString<32> FilePath(LineRef.substr(Delimiter + 1));
llvm::sys::path::native(FilePath, llvm::sys::path::Style::posix);
bool InsertionOccured;
@@ -624,15 +623,14 @@ parseInvocationList(StringRef FileContent, llvm::sys::path::Style PathStyle) {
return llvm::make_error<IndexError>(
index_error_code::invocation_list_wrong_format);
- SmallVector<char, 32> ValueStorage;
+ SmallString<32> ValueStorage;
StringRef SourcePath = Key->getValue(ValueStorage);
// Store paths with PathStyle directory separator.
- SmallVector<char, 32> NativeSourcePath;
- llvm::Twine{SourcePath}.toVector(NativeSourcePath);
+ SmallString<32> NativeSourcePath(SourcePath);
llvm::sys::path::native(NativeSourcePath, PathStyle);
- StringRef InvocationKey{NativeSourcePath.begin(), NativeSourcePath.size()};
+ StringRef InvocationKey(NativeSourcePath);
if (InvocationList.find(InvocationKey) != InvocationList.end())
return llvm::make_error<IndexError>(
diff --git a/clang/lib/Sema/Sema.cpp b/clang/lib/Sema/Sema.cpp
index 7effb152773c..3901c5e1fec8 100644
--- a/clang/lib/Sema/Sema.cpp
+++ b/clang/lib/Sema/Sema.cpp
@@ -1818,7 +1818,7 @@ bool Sema::findMacroSpelling(SourceLocation &locref, StringRef name) {
loc = getSourceManager().getExpansionLoc(loc);
// If that's written with the name, stop here.
- SmallVector<char, 16> buffer;
+ SmallString<16> buffer;
if (getPreprocessor().getSpelling(loc, buffer) == name) {
locref = loc;
return true;
diff --git a/clang/lib/Sema/SemaTemplateInstantiate.cpp b/clang/lib/Sema/SemaTemplateInstantiate.cpp
index 0b7fe0ca0672..e8e34c33e37b 100644
--- a/clang/lib/Sema/SemaTemplateInstantiate.cpp
+++ b/clang/lib/Sema/SemaTemplateInstantiate.cpp
@@ -584,7 +584,7 @@ void Sema::PrintInstantiationStack() {
case CodeSynthesisContext::DefaultTemplateArgumentInstantiation: {
TemplateDecl *Template = cast<TemplateDecl>(Active->Template);
- SmallVector<char, 128> TemplateArgsStr;
+ SmallString<128> TemplateArgsStr;
llvm::raw_svector_ostream OS(TemplateArgsStr);
Template->printName(OS);
printTemplateArgumentList(OS, Active->template_arguments(),
@@ -650,7 +650,7 @@ void Sema::PrintInstantiationStack() {
ParmVarDecl *Param = cast<ParmVarDecl>(Active->Entity);
FunctionDecl *FD = cast<FunctionDecl>(Param->getDeclContext());
- SmallVector<char, 128> TemplateArgsStr;
+ SmallString<128> TemplateArgsStr;
llvm::raw_svector_ostream OS(TemplateArgsStr);
FD->printName(OS);
printTemplateArgumentList(OS, Active->template_arguments(),
@@ -802,7 +802,7 @@ void Sema::PrintInstantiationStack() {
assert(isa<FunctionDecl>(Active->Entity));
DiagID = diag::note_checking_constraints_for_function_here;
}
- SmallVector<char, 128> TemplateArgsStr;
+ SmallString<128> TemplateArgsStr;
llvm::raw_svector_ostream OS(TemplateArgsStr);
cast<NamedDecl>(Active->Entity)->printName(OS);
if (!isa<FunctionDecl>(Active->Entity))
diff --git a/clang/lib/Serialization/ASTWriter.cpp b/clang/lib/Serialization/ASTWriter.cpp
index c55ef988db08..4d1e6bfcb145 100644
--- a/clang/lib/Serialization/ASTWriter.cpp
+++ b/clang/lib/Serialization/ASTWriter.cpp
@@ -1622,7 +1622,7 @@ namespace {
ASTWriter &Writer;
// Keep track of the framework names we've used during serialization.
- SmallVector<char, 128> FrameworkStringData;
+ SmallString<128> FrameworkStringData;
llvm::StringMap<unsigned> FrameworkNameOffset;
public:
@@ -1709,8 +1709,7 @@ namespace {
= FrameworkNameOffset.find(Data.HFI.Framework);
if (Pos == FrameworkNameOffset.end()) {
Offset = FrameworkStringData.size() + 1;
- FrameworkStringData.append(Data.HFI.Framework.begin(),
- Data.HFI.Framework.end());
+ FrameworkStringData.append(Data.HFI.Framework);
FrameworkStringData.push_back(0);
FrameworkNameOffset[Data.HFI.Framework] = Offset;
diff --git a/clang/lib/Serialization/GlobalModuleIndex.cpp b/clang/lib/Serialization/GlobalModuleIndex.cpp
index 9192b3b476bb..52ce17d984bf 100644
--- a/clang/lib/Serialization/GlobalModuleIndex.cpp
+++ b/clang/lib/Serialization/GlobalModuleIndex.cpp
@@ -905,7 +905,7 @@ GlobalModuleIndex::writeIndex(FileManager &FileMgr,
}
// The output buffer, into which the global index will be written.
- SmallVector<char, 16> OutputBuffer;
+ SmallString<16> OutputBuffer;
{
llvm::BitstreamWriter OutputStream(OutputBuffer);
if (Builder.writeIndex(OutputStream))
@@ -913,9 +913,8 @@ GlobalModuleIndex::writeIndex(FileManager &FileMgr,
"failed writing index");
}
- return llvm::writeFileAtomically(
- (IndexPath + "-%%%%%%%%").str(), IndexPath,
- llvm::StringRef(OutputBuffer.data(), OutputBuffer.size()));
+ return llvm::writeFileAtomically((IndexPath + "-%%%%%%%%").str(), IndexPath,
+ OutputBuffer);
}
namespace {
diff --git a/clang/lib/StaticAnalyzer/Core/CheckerContext.cpp b/clang/lib/StaticAnalyzer/Core/CheckerContext.cpp
index 725ff1002e29..3d44d2cbc069 100644
--- a/clang/lib/StaticAnalyzer/Core/CheckerContext.cpp
+++ b/clang/lib/StaticAnalyzer/Core/CheckerContext.cpp
@@ -93,7 +93,7 @@ StringRef CheckerContext::getMacroNameOrSpelling(SourceLocation &Loc) {
if (Loc.isMacroID())
return Lexer::getImmediateMacroName(Loc, getSourceManager(),
getLangOpts());
- SmallVector<char, 16> buf;
+ SmallString<16> buf;
return Lexer::getSpelling(Loc, buf, getSourceManager(), getLangOpts());
}
diff --git a/clang/lib/Tooling/Refactoring/Rename/USRFinder.cpp b/clang/lib/Tooling/Refactoring/Rename/USRFinder.cpp
index 23f567f1c9ec..ac8ad344623c 100644
--- a/clang/lib/Tooling/Refactoring/Rename/USRFinder.cpp
+++ b/clang/lib/Tooling/Refactoring/Rename/USRFinder.cpp
@@ -133,13 +133,13 @@ const NamedDecl *getNamedDeclFor(const ASTContext &Context,
}
std::string getUSRForDecl(const Decl *Decl) {
- llvm::SmallVector<char, 128> Buff;
+ llvm::SmallString<128> Buff;
// FIXME: Add test for the nullptr case.
if (Decl == nullptr || index::generateUSRForDecl(Decl, Buff))
return "";
- return std::string(Buff.data(), Buff.size());
+ return std::string(Buff);
}
} // end namespace tooling
More information about the cfe-commits
mailing list