diff options
Diffstat (limited to 'clang/unittests/Tooling')
-rw-r--r-- | clang/unittests/Tooling/CompilationDatabaseTest.cpp | 12 | ||||
-rw-r--r-- | clang/unittests/Tooling/DependencyScannerTest.cpp | 27 | ||||
-rw-r--r-- | clang/unittests/Tooling/ExecutionTest.cpp | 4 | ||||
-rw-r--r-- | clang/unittests/Tooling/HeaderIncludesTest.cpp | 2 | ||||
-rw-r--r-- | clang/unittests/Tooling/RangeSelectorTest.cpp | 64 | ||||
-rw-r--r-- | clang/unittests/Tooling/RecursiveASTVisitorTestPostOrderVisitor.cpp | 4 | ||||
-rw-r--r-- | clang/unittests/Tooling/RefactoringTest.cpp | 23 | ||||
-rw-r--r-- | clang/unittests/Tooling/RewriterTestContext.h | 5 | ||||
-rw-r--r-- | clang/unittests/Tooling/SourceCodeBuildersTest.cpp | 2 | ||||
-rw-r--r-- | clang/unittests/Tooling/StencilTest.cpp | 13 | ||||
-rw-r--r-- | clang/unittests/Tooling/Syntax/TreeTest.cpp | 3 | ||||
-rw-r--r-- | clang/unittests/Tooling/ToolingTest.cpp | 9 | ||||
-rw-r--r-- | clang/unittests/Tooling/TransformerTest.cpp | 71 |
13 files changed, 130 insertions, 109 deletions
diff --git a/clang/unittests/Tooling/CompilationDatabaseTest.cpp b/clang/unittests/Tooling/CompilationDatabaseTest.cpp index 56ebadc..cc948b8 100644 --- a/clang/unittests/Tooling/CompilationDatabaseTest.cpp +++ b/clang/unittests/Tooling/CompilationDatabaseTest.cpp @@ -87,11 +87,11 @@ TEST(JSONCompilationDatabase, GetAllFiles) { std::vector<std::string> expected_files; SmallString<16> PathStorage; llvm::sys::path::native("//net/dir/file1", PathStorage); - expected_files.push_back(PathStorage.str()); + expected_files.push_back(std::string(PathStorage.str())); llvm::sys::path::native("//net/dir/file2", PathStorage); - expected_files.push_back(PathStorage.str()); + expected_files.push_back(std::string(PathStorage.str())); llvm::sys::path::native("//net/file1", PathStorage); - expected_files.push_back(PathStorage.str()); + expected_files.push_back(std::string(PathStorage.str())); EXPECT_EQ(expected_files, getAllFiles("[{\"directory\":\"//net/dir\"," "\"command\":\"command\"," @@ -654,7 +654,7 @@ struct MemCDB : public CompilationDatabase { std::vector<std::string> getAllFiles() const override { std::vector<std::string> Result; for (const auto &Entry : Entries) - Result.push_back(Entry.first()); + Result.push_back(std::string(Entry.first())); return Result; } }; @@ -682,7 +682,7 @@ protected: llvm::sys::path::native(File); llvm::SmallString<64> Result; llvm::sys::path::append(Result, Dir, File); - return Result.str(); + return std::string(Result.str()); } MemCDB::EntryMap Entries; @@ -723,7 +723,7 @@ protected: Proxy.consume_front(llvm::sys::path::get_separator()); llvm::SmallString<32> Result = Proxy; llvm::sys::path::native(Result, llvm::sys::path::Style::posix); - return Result.str(); + return std::string(Result.str()); } }; diff --git a/clang/unittests/Tooling/DependencyScannerTest.cpp b/clang/unittests/Tooling/DependencyScannerTest.cpp index 60f6566..5a9c514 100644 --- a/clang/unittests/Tooling/DependencyScannerTest.cpp +++ b/clang/unittests/Tooling/DependencyScannerTest.cpp @@ -83,9 +83,11 @@ TEST(DependencyScanner, ScanDepsReuseFilemanager) { auto VFS = new llvm::vfs::InMemoryFileSystem(); VFS->setCurrentWorkingDirectory(CWD); auto Sept = llvm::sys::path::get_separator(); - std::string HeaderPath = llvm::formatv("{0}root{0}header.h", Sept); - std::string SymlinkPath = llvm::formatv("{0}root{0}symlink.h", Sept); - std::string TestPath = llvm::formatv("{0}root{0}test.cpp", Sept); + std::string HeaderPath = + std::string(llvm::formatv("{0}root{0}header.h", Sept)); + std::string SymlinkPath = + std::string(llvm::formatv("{0}root{0}symlink.h", Sept)); + std::string TestPath = std::string(llvm::formatv("{0}root{0}test.cpp", Sept)); VFS->addFile(HeaderPath, 0, llvm::MemoryBuffer::getMemBuffer("\n")); VFS->addHardLink(SymlinkPath, HeaderPath); @@ -130,10 +132,13 @@ TEST(DependencyScanner, ScanDepsReuseFilemanagerSkippedFile) { auto VFS = new llvm::vfs::InMemoryFileSystem(); VFS->setCurrentWorkingDirectory(CWD); auto Sept = llvm::sys::path::get_separator(); - std::string HeaderPath = llvm::formatv("{0}root{0}header.h", Sept); - std::string SymlinkPath = llvm::formatv("{0}root{0}symlink.h", Sept); - std::string TestPath = llvm::formatv("{0}root{0}test.cpp", Sept); - std::string Test2Path = llvm::formatv("{0}root{0}test2.cpp", Sept); + std::string HeaderPath = + std::string(llvm::formatv("{0}root{0}header.h", Sept)); + std::string SymlinkPath = + std::string(llvm::formatv("{0}root{0}symlink.h", Sept)); + std::string TestPath = std::string(llvm::formatv("{0}root{0}test.cpp", Sept)); + std::string Test2Path = + std::string(llvm::formatv("{0}root{0}test2.cpp", Sept)); VFS->addFile(HeaderPath, 0, llvm::MemoryBuffer::getMemBuffer("#pragma once\n")); @@ -169,9 +174,11 @@ TEST(DependencyScanner, ScanDepsReuseFilemanagerHasInclude) { auto VFS = new llvm::vfs::InMemoryFileSystem(); VFS->setCurrentWorkingDirectory(CWD); auto Sept = llvm::sys::path::get_separator(); - std::string HeaderPath = llvm::formatv("{0}root{0}header.h", Sept); - std::string SymlinkPath = llvm::formatv("{0}root{0}symlink.h", Sept); - std::string TestPath = llvm::formatv("{0}root{0}test.cpp", Sept); + std::string HeaderPath = + std::string(llvm::formatv("{0}root{0}header.h", Sept)); + std::string SymlinkPath = + std::string(llvm::formatv("{0}root{0}symlink.h", Sept)); + std::string TestPath = std::string(llvm::formatv("{0}root{0}test.cpp", Sept)); VFS->addFile(HeaderPath, 0, llvm::MemoryBuffer::getMemBuffer("\n")); VFS->addHardLink(SymlinkPath, HeaderPath); diff --git a/clang/unittests/Tooling/ExecutionTest.cpp b/clang/unittests/Tooling/ExecutionTest.cpp index 16455fb..91ab859 100644 --- a/clang/unittests/Tooling/ExecutionTest.cpp +++ b/clang/unittests/Tooling/ExecutionTest.cpp @@ -112,7 +112,7 @@ public: } void mapVirtualFile(StringRef FilePath, StringRef Content) override { - VFS[FilePath] = Content; + VFS[std::string(FilePath)] = std::string(Content); } private: @@ -289,7 +289,7 @@ TEST(AllTUsToolTest, ManyFiles) { ASSERT_TRUE(!Err); std::vector<std::string> Results; Executor.getToolResults()->forEachResult( - [&](StringRef Name, StringRef) { Results.push_back(Name); }); + [&](StringRef Name, StringRef) { Results.push_back(std::string(Name)); }); EXPECT_THAT(ExpectedSymbols, ::testing::UnorderedElementsAreArray(Results)); } diff --git a/clang/unittests/Tooling/HeaderIncludesTest.cpp b/clang/unittests/Tooling/HeaderIncludesTest.cpp index 635d7eb..9f86d2e 100644 --- a/clang/unittests/Tooling/HeaderIncludesTest.cpp +++ b/clang/unittests/Tooling/HeaderIncludesTest.cpp @@ -25,7 +25,7 @@ protected: assert(Header.startswith("\"") || Header.startswith("<")); auto R = Includes.insert(Header.trim("\"<>"), Header.startswith("<")); if (!R) - return Code; + return std::string(Code); auto Result = applyAllReplacements(Code, Replacements(*R)); EXPECT_TRUE(static_cast<bool>(Result)); return *Result; diff --git a/clang/unittests/Tooling/RangeSelectorTest.cpp b/clang/unittests/Tooling/RangeSelectorTest.cpp index 8a7d555..a84b0b9 100644 --- a/clang/unittests/Tooling/RangeSelectorTest.cpp +++ b/clang/unittests/Tooling/RangeSelectorTest.cpp @@ -108,7 +108,7 @@ Expected<CharSourceRange> selectFromAssorted(RangeSelector Selector) { } // Matches the message expected for type-error failures. -testing::Matcher<StringError> withTypeErrorMessage(StringRef NodeID) { +testing::Matcher<StringError> withTypeErrorMessage(const std::string &NodeID) { return testing::Property( &StringError::getMessage, AllOf(HasSubstr(NodeID), HasSubstr("mismatched type"))); @@ -131,7 +131,7 @@ TEST(RangeSelectorTest, BeforeOp) { int f(int x, int y, int z) { return 3; } int g() { return f(/* comment */ 3, 7 /* comment */, 9); } )cc"; - StringRef Call = "call"; + const char *Call = "call"; TestMatch Match = matchCode(Code, callExpr().bind(Call)); const auto* E = Match.Result.Nodes.getNodeAs<Expr>(Call); assert(E != nullptr); @@ -173,8 +173,8 @@ TEST(RangeSelectorTest, RangeOp) { int f(int x, int y, int z) { return 3; } int g() { return f(/* comment */ 3, 7 /* comment */, 9); } )cc"; - StringRef Arg0 = "a0"; - StringRef Arg1 = "a1"; + const char *Arg0 = "a0"; + const char *Arg1 = "a1"; StringRef Call = "call"; auto Matcher = callExpr(hasArgument(0, expr().bind(Arg0)), hasArgument(1, expr().bind(Arg1))) @@ -190,21 +190,21 @@ TEST(RangeSelectorTest, RangeOp) { TEST(RangeSelectorTest, NodeOpStatement) { StringRef Code = "int f() { return 3; }"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, returnStmt().bind(ID)); EXPECT_THAT_EXPECTED(select(node(ID), Match), HasValue("return 3;")); } TEST(RangeSelectorTest, NodeOpExpression) { StringRef Code = "int f() { return 3; }"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, expr().bind(ID)); EXPECT_THAT_EXPECTED(select(node(ID), Match), HasValue("3")); } TEST(RangeSelectorTest, StatementOp) { StringRef Code = "int f() { return 3; }"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, expr().bind(ID)); EXPECT_THAT_EXPECTED(select(statement(ID), Match), HasValue("3;")); } @@ -219,7 +219,7 @@ TEST(RangeSelectorTest, MemberOp) { return s.member; } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, memberExpr().bind(ID)); EXPECT_THAT_EXPECTED(select(member(ID), Match), HasValue("member")); } @@ -238,7 +238,7 @@ TEST(RangeSelectorTest, MemberOpQualified) { return t.S::member; } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, memberExpr().bind(ID)); EXPECT_THAT_EXPECTED(select(member(ID), Match), HasValue("member")); } @@ -254,7 +254,7 @@ TEST(RangeSelectorTest, MemberOpTemplate) { } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, memberExpr().bind(ID)); EXPECT_THAT_EXPECTED(select(member(ID), Match), HasValue("foo")); } @@ -270,7 +270,7 @@ TEST(RangeSelectorTest, MemberOpOperator) { } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, memberExpr().bind(ID)); EXPECT_THAT_EXPECTED(select(member(ID), Match), HasValue("operator *")); } @@ -281,7 +281,7 @@ TEST(RangeSelectorTest, NameOpNamedDecl) { return 3; } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, functionDecl().bind(ID)); EXPECT_THAT_EXPECTED(select(name(ID), Match), HasValue("myfun")); } @@ -293,7 +293,7 @@ TEST(RangeSelectorTest, NameOpDeclRef) { } int g(int x) { return foo(x) * x; } )cc"; - StringRef Ref = "ref"; + const char *Ref = "ref"; TestMatch Match = matchCode(Code, declRefExpr(to(functionDecl())).bind(Ref)); EXPECT_THAT_EXPECTED(select(name(Ref), Match), HasValue("foo")); } @@ -306,7 +306,7 @@ TEST(RangeSelectorTest, NameOpCtorInitializer) { int field; }; )cc"; - StringRef Init = "init"; + const char *Init = "init"; TestMatch Match = matchCode(Code, cxxCtorInitializer().bind(Init)); EXPECT_THAT_EXPECTED(select(name(Init), Match), HasValue("field")); } @@ -328,7 +328,7 @@ TEST(RangeSelectorTest, NameOpDeclRefError) { return *s + x; } )cc"; - StringRef Ref = "ref"; + const char *Ref = "ref"; TestMatch Match = matchCode(Code, declRefExpr(to(functionDecl())).bind(Ref)); EXPECT_THAT_EXPECTED( name(Ref)(Match.Result), @@ -347,7 +347,7 @@ TEST(RangeSelectorTest, CallArgsOp) { return x.bar(3, 4); } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, callExpr().bind(ID)); EXPECT_THAT_EXPECTED(select(callArgs(ID), Match), HasValue("3, 4")); } @@ -362,7 +362,7 @@ TEST(RangeSelectorTest, CallArgsOpNoArgs) { return x.bar(); } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, callExpr().bind(ID)); EXPECT_THAT_EXPECTED(select(callArgs(ID), Match), HasValue("")); } @@ -377,7 +377,7 @@ TEST(RangeSelectorTest, CallArgsOpNoArgsWithComments) { return x.bar(/*empty*/); } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, callExpr().bind(ID)); EXPECT_THAT_EXPECTED(select(callArgs(ID), Match), HasValue("/*empty*/")); } @@ -394,7 +394,7 @@ TEST(RangeSelectorTest, CallArgsOpWithParens) { return C().bar(3, 4); } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, callExpr(callee(functionDecl(hasName("bar")))).bind(ID)); EXPECT_THAT_EXPECTED(select(callArgs(ID), Match), HasValue("3, 4")); @@ -410,7 +410,7 @@ TEST(RangeSelectorTest, CallArgsOpLeadingComments) { return x.bar(/*leading*/ 3, 4); } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, callExpr().bind(ID)); EXPECT_THAT_EXPECTED(select(callArgs(ID), Match), HasValue("/*leading*/ 3, 4")); @@ -426,7 +426,7 @@ TEST(RangeSelectorTest, CallArgsOpTrailingComments) { return x.bar(3 /*trailing*/, 4); } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, callExpr().bind(ID)); EXPECT_THAT_EXPECTED(select(callArgs(ID), Match), HasValue("3 /*trailing*/, 4")); @@ -445,7 +445,7 @@ TEST(RangeSelectorTest, CallArgsOpEolComments) { ); } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, callExpr().bind(ID)); std::string ExpectedString = R"( // Header 1, // foo @@ -466,7 +466,7 @@ TEST(RangeSelectorTest, StatementsOp) { void g(); void f() { /* comment */ g(); /* comment */ g(); /* comment */ } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, compoundStmt().bind(ID)); EXPECT_THAT_EXPECTED( select(statements(ID), Match), @@ -475,7 +475,7 @@ TEST(RangeSelectorTest, StatementsOp) { TEST(RangeSelectorTest, StatementsOpEmptyList) { StringRef Code = "void f() {}"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, compoundStmt().bind(ID)); EXPECT_THAT_EXPECTED(select(statements(ID), Match), HasValue("")); } @@ -494,7 +494,7 @@ TEST(RangeSelectorTest, ElementsOp) { (void)v; } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, initListExpr().bind(ID)); EXPECT_THAT_EXPECTED( select(initListElements(ID), Match), @@ -508,7 +508,7 @@ TEST(RangeSelectorTest, ElementsOpEmptyList) { (void)v; } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, initListExpr().bind(ID)); EXPECT_THAT_EXPECTED(select(initListElements(ID), Match), HasValue("")); } @@ -529,7 +529,7 @@ TEST(RangeSelectorTest, ElseBranchOpSingleStatement) { return x + 5; } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, ifStmt().bind(ID)); EXPECT_THAT_EXPECTED(select(elseBranch(ID), Match), HasValue("else x = 4;")); } @@ -543,7 +543,7 @@ TEST(RangeSelectorTest, ElseBranchOpCompoundStatement) { return x + 5; } )cc"; - StringRef ID = "id"; + const char *ID = "id"; TestMatch Match = matchCode(Code, ifStmt().bind(ID)); EXPECT_THAT_EXPECTED(select(elseBranch(ID), Match), HasValue("else { x = 4; }")); @@ -556,7 +556,7 @@ TEST(RangeSelectorTest, ExpansionOp) { BADDECL(x * x) )cc"; - StringRef Fun = "Fun"; + const char *Fun = "Fun"; TestMatch Match = matchCode(Code, functionDecl(hasName("bad")).bind(Fun)); EXPECT_THAT_EXPECTED(select(expansion(node(Fun)), Match), HasValue("BADDECL(x * x)")); @@ -569,7 +569,7 @@ TEST(RangeSelectorTest, ExpansionOpPartial) { BADDECL(x * x) )cc"; - StringRef Ret = "Ret"; + const char *Ret = "Ret"; TestMatch Match = matchCode(Code, returnStmt().bind(Ret)); EXPECT_THAT_EXPECTED(select(expansion(node(Ret)), Match), HasValue("BADDECL(x * x)")); @@ -581,7 +581,7 @@ TEST(RangeSelectorTest, IfBoundOpBound) { return 3 + 5; } )cc"; - StringRef ID = "id", Op = "op"; + const char *ID = "id", *Op = "op"; TestMatch Match = matchCode(Code, binaryOperator(hasLHS(expr().bind(ID))).bind(Op)); EXPECT_THAT_EXPECTED(select(ifBound(ID, node(ID), node(Op)), Match), @@ -594,7 +594,7 @@ TEST(RangeSelectorTest, IfBoundOpUnbound) { return 3 + 5; } )cc"; - StringRef ID = "id", Op = "op"; + const char *ID = "id", *Op = "op"; TestMatch Match = matchCode(Code, binaryOperator().bind(Op)); EXPECT_THAT_EXPECTED(select(ifBound(ID, node(ID), node(Op)), Match), HasValue("3 + 5")); diff --git a/clang/unittests/Tooling/RecursiveASTVisitorTestPostOrderVisitor.cpp b/clang/unittests/Tooling/RecursiveASTVisitorTestPostOrderVisitor.cpp index 965bb3d..9fd075e 100644 --- a/clang/unittests/Tooling/RecursiveASTVisitorTestPostOrderVisitor.cpp +++ b/clang/unittests/Tooling/RecursiveASTVisitorTestPostOrderVisitor.cpp @@ -31,12 +31,12 @@ public: bool shouldTraversePostOrder() const { return VisitPostOrder; } bool VisitUnaryOperator(UnaryOperator *Op) { - VisitedNodes.push_back(Op->getOpcodeStr(Op->getOpcode())); + VisitedNodes.push_back(std::string(Op->getOpcodeStr(Op->getOpcode()))); return true; } bool VisitBinaryOperator(BinaryOperator *Op) { - VisitedNodes.push_back(Op->getOpcodeStr()); + VisitedNodes.push_back(std::string(Op->getOpcodeStr())); return true; } diff --git a/clang/unittests/Tooling/RefactoringTest.cpp b/clang/unittests/Tooling/RefactoringTest.cpp index 5949c53..d65c6db 100644 --- a/clang/unittests/Tooling/RefactoringTest.cpp +++ b/clang/unittests/Tooling/RefactoringTest.cpp @@ -528,12 +528,12 @@ TEST_F(ReplacementTest, MultipleFilesReplaceAndFormat) { // Scrambled the order of replacements. std::map<std::string, Replacements> FileToReplaces; - FileToReplaces[File1] = toReplacements( + FileToReplaces[std::string(File1)] = toReplacements( {tooling::Replacement(Context.Sources, Context.getLocation(ID1, 1, 1), 6, "auto "), tooling::Replacement(Context.Sources, Context.getLocation(ID1, 3, 10), 1, "12345678901")}); - FileToReplaces[File2] = toReplacements( + FileToReplaces[std::string(File2)] = toReplacements( {tooling::Replacement(Context.Sources, Context.getLocation(ID2, 1, 12), 0, "4567890123"), tooling::Replacement(Context.Sources, Context.getLocation(ID2, 2, 9), 1, @@ -612,7 +612,8 @@ public: assert(File); StringRef Found = - TemporaryFiles.insert(std::make_pair(Name, Path.str())).first->second; + TemporaryFiles.insert(std::make_pair(Name, std::string(Path.str()))) + .first->second; assert(Found == Path); (void)Found; return Context.Sources.createFileID(*File, SourceLocation(), @@ -628,7 +629,7 @@ public: // FIXME: Figure out whether there is a way to get the SourceManger to // reopen the file. auto FileBuffer = Context.Files.getBufferForFile(Path); - return (*FileBuffer)->getBuffer(); + return std::string((*FileBuffer)->getBuffer()); } llvm::StringMap<std::string> TemporaryFiles; @@ -1044,8 +1045,8 @@ TEST(DeduplicateByFileTest, PathsWithDots) { #endif EXPECT_TRUE(VFS->addFile(Path1, 0, llvm::MemoryBuffer::getMemBuffer(""))); EXPECT_TRUE(VFS->addFile(Path2, 0, llvm::MemoryBuffer::getMemBuffer(""))); - FileToReplaces[Path1] = Replacements(); - FileToReplaces[Path2] = Replacements(); + FileToReplaces[std::string(Path1)] = Replacements(); + FileToReplaces[std::string(Path2)] = Replacements(); FileToReplaces = groupReplacementsByFile(FileMgr, FileToReplaces); EXPECT_EQ(1u, FileToReplaces.size()); EXPECT_EQ(Path1, FileToReplaces.begin()->first); @@ -1065,8 +1066,8 @@ TEST(DeduplicateByFileTest, PathWithDotSlash) { #endif EXPECT_TRUE(VFS->addFile(Path1, 0, llvm::MemoryBuffer::getMemBuffer(""))); EXPECT_TRUE(VFS->addFile(Path2, 0, llvm::MemoryBuffer::getMemBuffer(""))); - FileToReplaces[Path1] = Replacements(); - FileToReplaces[Path2] = Replacements(); + FileToReplaces[std::string(Path1)] = Replacements(); + FileToReplaces[std::string(Path2)] = Replacements(); FileToReplaces = groupReplacementsByFile(FileMgr, FileToReplaces); EXPECT_EQ(1u, FileToReplaces.size()); EXPECT_EQ(Path1, FileToReplaces.begin()->first); @@ -1084,8 +1085,8 @@ TEST(DeduplicateByFileTest, NonExistingFilePath) { StringRef Path1 = ".\\a\\b\\c.h"; StringRef Path2 = "a\\b\\c.h"; #endif - FileToReplaces[Path1] = Replacements(); - FileToReplaces[Path2] = Replacements(); + FileToReplaces[std::string(Path1)] = Replacements(); + FileToReplaces[std::string(Path2)] = Replacements(); FileToReplaces = groupReplacementsByFile(FileMgr, FileToReplaces); EXPECT_TRUE(FileToReplaces.empty()); } @@ -1306,7 +1307,7 @@ protected: ~ApplyAtomicChangesTest() override {} void setInput(llvm::StringRef Input) { - Code = Input; + Code = std::string(Input); FID = Context.createInMemoryFile(FilePath, Code); } diff --git a/clang/unittests/Tooling/RewriterTestContext.h b/clang/unittests/Tooling/RewriterTestContext.h index cfe5577a..99f7a11 100644 --- a/clang/unittests/Tooling/RewriterTestContext.h +++ b/clang/unittests/Tooling/RewriterTestContext.h @@ -77,7 +77,8 @@ class RewriterTestContext { assert(File); StringRef Found = - TemporaryFiles.insert(std::make_pair(Name, Path.str())).first->second; + TemporaryFiles.insert(std::make_pair(Name, std::string(Path.str()))) + .first->second; assert(Found == Path); (void)Found; return Sources.createFileID(*File, SourceLocation(), SrcMgr::C_User); @@ -107,7 +108,7 @@ class RewriterTestContext { // FIXME: Figure out whether there is a way to get the SourceManger to // reopen the file. auto FileBuffer = Files.getBufferForFile(Path); - return (*FileBuffer)->getBuffer(); + return std::string((*FileBuffer)->getBuffer()); } IntrusiveRefCntPtr<DiagnosticOptions> DiagOpts; diff --git a/clang/unittests/Tooling/SourceCodeBuildersTest.cpp b/clang/unittests/Tooling/SourceCodeBuildersTest.cpp index 9b5e7bf..b6f6aba 100644 --- a/clang/unittests/Tooling/SourceCodeBuildersTest.cpp +++ b/clang/unittests/Tooling/SourceCodeBuildersTest.cpp @@ -133,7 +133,7 @@ static void testBuilder( ASSERT_TRUE(StmtMatch); EXPECT_THAT(Builder(*StmtMatch->Result.Nodes.getNodeAs<Expr>("expr"), *StmtMatch->Result.Context), - ValueIs(Expected)); + ValueIs(std::string(Expected))); } TEST(SourceCodeBuildersTest, BuildParensUnaryOp) { diff --git a/clang/unittests/Tooling/StencilTest.cpp b/clang/unittests/Tooling/StencilTest.cpp index b248a5a..bd35f0d 100644 --- a/clang/unittests/Tooling/StencilTest.cpp +++ b/clang/unittests/Tooling/StencilTest.cpp @@ -111,7 +111,8 @@ protected: // Tests failures caused by references to unbound nodes. `unbound_id` is the // id that will cause the failure. void testUnboundNodeError(const Stencil &Stencil, StringRef UnboundId) { - testError(Stencil, AllOf(HasSubstr(UnboundId), HasSubstr("not bound"))); + testError(Stencil, + AllOf(HasSubstr(std::string(UnboundId)), HasSubstr("not bound"))); } }; @@ -128,8 +129,9 @@ TEST_F(StencilTest, SingleStatement) { hasThen(stmt().bind(Then)), hasElse(stmt().bind(Else)))); ASSERT_TRUE(StmtMatch); // Invert the if-then-else. - auto Stencil = cat("if (!", node(Condition), ") ", statement(Else), " else ", - statement(Then)); + auto Stencil = + cat("if (!", node(std::string(Condition)), ") ", + statement(std::string(Else)), " else ", statement(std::string(Then))); EXPECT_THAT_EXPECTED(Stencil->eval(StmtMatch->Result), HasValue("if (!true) return 0; else return 1;")); } @@ -156,7 +158,8 @@ void testExpr(StringRef Id, StringRef Snippet, const Stencil &Stencil, StringRef Expected) { auto StmtMatch = matchStmt(Snippet, expr().bind(Id)); ASSERT_TRUE(StmtMatch); - EXPECT_THAT_EXPECTED(Stencil->eval(StmtMatch->Result), HasValue(Expected)); + EXPECT_THAT_EXPECTED(Stencil->eval(StmtMatch->Result), + HasValue(std::string(Expected))); } void testFailure(StringRef Id, StringRef Snippet, const Stencil &Stencil, @@ -170,7 +173,7 @@ void testFailure(StringRef Id, StringRef Snippet, const Stencil &Stencil, TEST_F(StencilTest, SelectionOp) { StringRef Id = "id"; - testExpr(Id, "3;", cat(node(Id)), "3"); + testExpr(Id, "3;", cat(node(std::string(Id))), "3"); } TEST_F(StencilTest, IfBoundOpBound) { diff --git a/clang/unittests/Tooling/Syntax/TreeTest.cpp b/clang/unittests/Tooling/Syntax/TreeTest.cpp index 42d77d8..1749e66 100644 --- a/clang/unittests/Tooling/Syntax/TreeTest.cpp +++ b/clang/unittests/Tooling/Syntax/TreeTest.cpp @@ -862,7 +862,8 @@ void test() { auto *Root = buildTree(T.first); std::string Expected = llvm::StringRef(T.second).trim().str(); - std::string Actual = llvm::StringRef(Root->dump(*Arena)).trim(); + std::string Actual = + std::string(llvm::StringRef(Root->dump(*Arena)).trim()); EXPECT_EQ(Expected, Actual) << "the resulting dump is:\n" << Actual; } } diff --git a/clang/unittests/Tooling/ToolingTest.cpp b/clang/unittests/Tooling/ToolingTest.cpp index 1358134..59c9b4f 100644 --- a/clang/unittests/Tooling/ToolingTest.cpp +++ b/clang/unittests/Tooling/ToolingTest.cpp @@ -325,9 +325,9 @@ TEST(runToolOnCodeWithArgs, TestNoDepFile) { std::vector<std::string> Args; Args.push_back("-MMD"); Args.push_back("-MT"); - Args.push_back(DepFilePath.str()); + Args.push_back(std::string(DepFilePath.str())); Args.push_back("-MF"); - Args.push_back(DepFilePath.str()); + Args.push_back(std::string(DepFilePath.str())); EXPECT_TRUE(runToolOnCodeWithArgs(std::make_unique<SkipBodyAction>(), "", Args)); EXPECT_FALSE(llvm::sys::fs::exists(DepFilePath.str())); EXPECT_FALSE(llvm::sys::fs::remove(DepFilePath.str())); @@ -552,8 +552,9 @@ std::string getAnyTarget() { StringRef TargetName(Target.getName()); if (TargetName == "x86-64") TargetName = "x86_64"; - if (llvm::TargetRegistry::lookupTarget(TargetName, Error) == &Target) { - return TargetName; + if (llvm::TargetRegistry::lookupTarget(std::string(TargetName), Error) == + &Target) { + return std::string(TargetName); } } return ""; diff --git a/clang/unittests/Tooling/TransformerTest.cpp b/clang/unittests/Tooling/TransformerTest.cpp index c382783..454615c 100644 --- a/clang/unittests/Tooling/TransformerTest.cpp +++ b/clang/unittests/Tooling/TransformerTest.cpp @@ -174,7 +174,7 @@ TEST_F(TransformerTest, Flag) { hasName("proto::ProtoCommandLineFlag")))) .bind(Flag)), unless(callee(cxxMethodDecl(hasName("GetProto"))))), - changeTo(node(Flag), cat("EXPR"))); + changeTo(node(std::string(Flag)), cat("EXPR"))); std::string Input = R"cc( proto::ProtoCommandLineFlag flag; @@ -229,7 +229,7 @@ TEST_F(TransformerTest, AddIncludeAngled) { TEST_F(TransformerTest, NodePartNameNamedDecl) { StringRef Fun = "fun"; RewriteRule Rule = makeRule(functionDecl(hasName("bad")).bind(Fun), - changeTo(name(Fun), cat("good"))); + changeTo(name(std::string(Fun)), cat("good"))); std::string Input = R"cc( int bad(int x); @@ -261,7 +261,7 @@ TEST_F(TransformerTest, NodePartNameDeclRef) { StringRef Ref = "ref"; testRule(makeRule(declRefExpr(to(functionDecl(hasName("bad")))).bind(Ref), - changeTo(name(Ref), cat("good"))), + changeTo(name(std::string(Ref)), cat("good"))), Input, Expected); } @@ -279,7 +279,7 @@ TEST_F(TransformerTest, NodePartNameDeclRefFailure) { StringRef Ref = "ref"; Transformer T(makeRule(declRefExpr(to(functionDecl())).bind(Ref), - changeTo(name(Ref), cat("good"))), + changeTo(name(std::string(Ref)), cat("good"))), consumer()); T.registerMatchers(&MatchFinder); EXPECT_FALSE(rewrite(Input)); @@ -288,7 +288,7 @@ TEST_F(TransformerTest, NodePartNameDeclRefFailure) { TEST_F(TransformerTest, NodePartMember) { StringRef E = "expr"; RewriteRule Rule = makeRule(memberExpr(member(hasName("bad"))).bind(E), - changeTo(member(E), cat("good"))); + changeTo(member(std::string(E)), cat("good"))); std::string Input = R"cc( struct S { @@ -341,7 +341,8 @@ TEST_F(TransformerTest, NodePartMemberQualified) { )cc"; StringRef E = "expr"; - testRule(makeRule(memberExpr().bind(E), changeTo(member(E), cat("good"))), + testRule(makeRule(memberExpr().bind(E), + changeTo(member(std::string(E)), cat("good"))), Input, Expected); } @@ -373,7 +374,7 @@ TEST_F(TransformerTest, NodePartMemberMultiToken) { StringRef MemExpr = "member"; testRule(makeRule(memberExpr().bind(MemExpr), - changeTo(member(MemExpr), cat("good"))), + changeTo(member(std::string(MemExpr)), cat("good"))), Input, Expected); } @@ -391,9 +392,10 @@ TEST_F(TransformerTest, InsertBeforeEdit) { )cc"; StringRef Ret = "return"; - testRule(makeRule(returnStmt().bind(Ret), - insertBefore(statement(Ret), cat("int y = 3;"))), - Input, Expected); + testRule( + makeRule(returnStmt().bind(Ret), + insertBefore(statement(std::string(Ret)), cat("int y = 3;"))), + Input, Expected); } TEST_F(TransformerTest, InsertAfterEdit) { @@ -412,9 +414,10 @@ TEST_F(TransformerTest, InsertAfterEdit) { )cc"; StringRef Decl = "decl"; - testRule(makeRule(declStmt().bind(Decl), - insertAfter(statement(Decl), cat("int y = 3;"))), - Input, Expected); + testRule( + makeRule(declStmt().bind(Decl), + insertAfter(statement(std::string(Decl)), cat("int y = 3;"))), + Input, Expected); } TEST_F(TransformerTest, RemoveEdit) { @@ -431,8 +434,9 @@ TEST_F(TransformerTest, RemoveEdit) { )cc"; StringRef Decl = "decl"; - testRule(makeRule(declStmt().bind(Decl), remove(statement(Decl))), Input, - Expected); + testRule( + makeRule(declStmt().bind(Decl), remove(statement(std::string(Decl)))), + Input, Expected); } TEST_F(TransformerTest, MultiChange) { @@ -452,12 +456,13 @@ TEST_F(TransformerTest, MultiChange) { )"; StringRef C = "C", T = "T", E = "E"; - testRule(makeRule(ifStmt(hasCondition(expr().bind(C)), - hasThen(stmt().bind(T)), hasElse(stmt().bind(E))), - {changeTo(node(C), cat("true")), - changeTo(statement(T), cat("{ /* then */ }")), - changeTo(statement(E), cat("{ /* else */ }"))}), - Input, Expected); + testRule( + makeRule(ifStmt(hasCondition(expr().bind(C)), hasThen(stmt().bind(T)), + hasElse(stmt().bind(E))), + {changeTo(node(std::string(C)), cat("true")), + changeTo(statement(std::string(T)), cat("{ /* then */ }")), + changeTo(statement(std::string(E)), cat("{ /* else */ }"))}), + Input, Expected); } TEST_F(TransformerTest, OrderedRuleUnrelated) { @@ -467,7 +472,7 @@ TEST_F(TransformerTest, OrderedRuleUnrelated) { hasName("proto::ProtoCommandLineFlag")))) .bind(Flag)), unless(callee(cxxMethodDecl(hasName("GetProto"))))), - changeTo(node(Flag), cat("PROTO"))); + changeTo(node(std::string(Flag)), cat("PROTO"))); std::string Input = R"cc( proto::ProtoCommandLineFlag flag; @@ -582,9 +587,10 @@ TEST_F(TransformerTest, TextGeneratorFailure) { } std::string toString() const override { return "AlwaysFail"; } }; - Transformer T(makeRule(binaryOperator().bind(O), - changeTo(node(O), std::make_shared<AlwaysFail>())), - consumer()); + Transformer T( + makeRule(binaryOperator().bind(O), + changeTo(node(std::string(O)), std::make_shared<AlwaysFail>())), + consumer()); T.registerMatchers(&MatchFinder); EXPECT_FALSE(rewrite(Input)); EXPECT_THAT(Changes, IsEmpty()); @@ -597,8 +603,8 @@ TEST_F(TransformerTest, OverlappingEditsInRule) { // Try to change the whole binary-operator expression AND one its operands: StringRef O = "O", L = "L"; Transformer T(makeRule(binaryOperator(hasLHS(expr().bind(L))).bind(O), - {changeTo(node(O), cat("DELETE_OP")), - changeTo(node(L), cat("DELETE_LHS"))}), + {changeTo(node(std::string(O)), cat("DELETE_OP")), + changeTo(node(std::string(L)), cat("DELETE_LHS"))}), consumer()); T.registerMatchers(&MatchFinder); EXPECT_FALSE(rewrite(Input)); @@ -611,7 +617,8 @@ TEST_F(TransformerTest, OverlappingEditsMultipleMatches) { std::string Input = "int conflictOneRule() { return -7; }"; // Try to change the whole binary-operator expression AND one its operands: StringRef E = "E"; - Transformer T(makeRule(expr().bind(E), changeTo(node(E), cat("DELETE_EXPR"))), + Transformer T(makeRule(expr().bind(E), + changeTo(node(std::string(E)), cat("DELETE_EXPR"))), consumer()); T.registerMatchers(&MatchFinder); // The rewrite process fails because the changes conflict with each other... @@ -649,7 +656,7 @@ TEST_F(TransformerTest, SimpleMacro) { StringRef zero = "zero"; RewriteRule R = makeRule(integerLiteral(equals(0)).bind(zero), - changeTo(node(zero), cat("999"))); + changeTo(node(std::string(zero)), cat("999"))); testRule(R, Input, Expected); } @@ -746,7 +753,7 @@ TEST_F(TransformerTest, MatchSpansMacroTextButChangeDoesNot) { StringRef E = "expr"; testRule(makeRule(binaryOperator(hasLHS(expr().bind(E))), - changeTo(node(E), cat("LIT"))), + changeTo(node(std::string(E)), cat("LIT"))), Input, Expected); } @@ -764,7 +771,7 @@ TEST_F(TransformerTest, MatchSpansMacroTextButChangeDoesNotAnchoredInMacro) { StringRef E = "expr"; testRule(makeRule(binaryOperator(hasRHS(expr().bind(E))), - changeTo(node(E), cat("LIT"))), + changeTo(node(std::string(E)), cat("LIT"))), Input, Expected); } @@ -779,7 +786,7 @@ TEST_F(TransformerTest, NoPartialRewriteOMacroExpansion) { StringRef zero = "zero"; RewriteRule R = makeRule(integerLiteral(equals(0)).bind(zero), - changeTo(node(zero), cat("0"))); + changeTo(node(std::string(zero)), cat("0"))); testRule(R, Input, Input); } |