[C++11] Replace OwningPtr with std::unique_ptr.

This removes all references to OwningPtr, which should be fairly
undisruptive to out-of-tree projects since they are unlikely to use
clang-tools-extra as a library instead of a set of tools.

llvm-svn: 203382
This commit is contained in:
Ahmed Charles 2014-03-09 09:24:40 +00:00
parent b566902687
commit 6a2dc5c381
24 changed files with 36 additions and 44 deletions

View File

@ -59,7 +59,7 @@ collectReplacementsFromDirectory(const llvm::StringRef Directory,
TURFiles.push_back(I->path()); TURFiles.push_back(I->path());
OwningPtr<MemoryBuffer> Out; std::unique_ptr<MemoryBuffer> Out;
error_code BufferError = MemoryBuffer::getFile(I->path(), Out); error_code BufferError = MemoryBuffer::getFile(I->path(), Out);
if (BufferError) { if (BufferError) {
errs() << "Error reading " << I->path() << ": " << BufferError.message() errs() << "Error reading " << I->path() << ": " << BufferError.message()

View File

@ -233,7 +233,7 @@ int main(int argc, char **argv) {
// Remove the TUReplacementFiles (triggered by "remove-change-desc-files" // Remove the TUReplacementFiles (triggered by "remove-change-desc-files"
// command line option) when exiting main(). // command line option) when exiting main().
OwningPtr<ScopedFileRemover> Remover; std::unique_ptr<ScopedFileRemover> Remover;
if (RemoveTUReplacementFiles) if (RemoveTUReplacementFiles)
Remover.reset(new ScopedFileRemover(TURFiles, Diagnostics)); Remover.reset(new ScopedFileRemover(TURFiles, Diagnostics));

View File

@ -14,7 +14,6 @@
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
#include "IncludeExcludeInfo.h" #include "IncludeExcludeInfo.h"
#include "llvm/ADT/OwningPtr.h"
#include "llvm/Support/CommandLine.h" #include "llvm/Support/CommandLine.h"
#include "llvm/Support/FileSystem.h" #include "llvm/Support/FileSystem.h"
#include "llvm/Support/MemoryBuffer.h" #include "llvm/Support/MemoryBuffer.h"
@ -122,7 +121,7 @@ error_code IncludeExcludeInfo::readListFromString(StringRef IncludeString,
error_code IncludeExcludeInfo::readListFromFile(StringRef IncludeListFile, error_code IncludeExcludeInfo::readListFromFile(StringRef IncludeListFile,
StringRef ExcludeListFile) { StringRef ExcludeListFile) {
if (!IncludeListFile.empty()) { if (!IncludeListFile.empty()) {
OwningPtr<MemoryBuffer> FileBuf; std::unique_ptr<MemoryBuffer> FileBuf;
if (error_code Err = MemoryBuffer::getFile(IncludeListFile, FileBuf)) { if (error_code Err = MemoryBuffer::getFile(IncludeListFile, FileBuf)) {
errs() << "Unable to read from include file.\n"; errs() << "Unable to read from include file.\n";
return Err; return Err;
@ -132,7 +131,7 @@ error_code IncludeExcludeInfo::readListFromFile(StringRef IncludeListFile,
return Err; return Err;
} }
if (!ExcludeListFile.empty()) { if (!ExcludeListFile.empty()) {
OwningPtr<MemoryBuffer> FileBuf; std::unique_ptr<MemoryBuffer> FileBuf;
if (error_code Err = MemoryBuffer::getFile(ExcludeListFile, FileBuf)) { if (error_code Err = MemoryBuffer::getFile(ExcludeListFile, FileBuf)) {
errs() << "Unable to read from exclude file.\n"; errs() << "Unable to read from exclude file.\n";
return Err; return Err;

View File

@ -18,7 +18,6 @@
#include "Core/IncludeExcludeInfo.h" #include "Core/IncludeExcludeInfo.h"
#include "Core/Refactoring.h" #include "Core/Refactoring.h"
#include "llvm/ADT/OwningPtr.h"
#include "llvm/Support/CommandLine.h" #include "llvm/Support/CommandLine.h"
#include "llvm/Support/Registry.h" #include "llvm/Support/Registry.h"
#include "llvm/Support/Timer.h" #include "llvm/Support/Timer.h"

View File

@ -61,7 +61,7 @@ Transforms::createSelectedTransforms(const TransformOptions &GlobalOptions,
if (!OptionEnabled) if (!OptionEnabled)
continue; continue;
llvm::OwningPtr<TransformFactory> Factory(I->instantiate()); std::unique_ptr<TransformFactory> Factory(I->instantiate());
if (Factory->supportsCompilers(RequiredVersions)) if (Factory->supportsCompilers(RequiredVersions))
ChosenTransforms.push_back(Factory->createTransform(GlobalOptions)); ChosenTransforms.push_back(Factory->createTransform(GlobalOptions));
else if (ExplicitlyEnabled) else if (ExplicitlyEnabled)

View File

@ -53,7 +53,7 @@ struct TUTrackingInfo {
/// \} /// \}
private: private:
llvm::OwningPtr<StmtAncestorASTVisitor> ParentFinder; std::unique_ptr<StmtAncestorASTVisitor> ParentFinder;
StmtGeneratedVarNameMap GeneratedDecls; StmtGeneratedVarNameMap GeneratedDecls;
ReplacedVarsMap ReplacedVars; ReplacedVarsMap ReplacedVars;
}; };

View File

@ -37,7 +37,7 @@ public:
virtual bool handleBeginSource(clang::CompilerInstance &CI, virtual bool handleBeginSource(clang::CompilerInstance &CI,
llvm::StringRef Filename) override; llvm::StringRef Filename) override;
private: private:
llvm::OwningPtr<TUTrackingInfo> TUInfo; std::unique_ptr<TUTrackingInfo> TUInfo;
}; };
#endif // CLANG_MODERNIZE_LOOP_CONVERT_H #endif // CLANG_MODERNIZE_LOOP_CONVERT_H

View File

@ -66,7 +66,7 @@ private:
virtual bool handleBeginSource(clang::CompilerInstance &CI, virtual bool handleBeginSource(clang::CompilerInstance &CI,
llvm::StringRef Filename) override; llvm::StringRef Filename) override;
llvm::OwningPtr<IncludeDirectives> IncludeManager; std::unique_ptr<IncludeDirectives> IncludeManager;
ConstructorParamReplacer *Replacer; ConstructorParamReplacer *Replacer;
}; };

View File

@ -323,7 +323,7 @@ int main(int argc, const char **argv) {
cl::SetVersionPrinter(&printVersion); cl::SetVersionPrinter(&printVersion);
// Parse options and generate compilations. // Parse options and generate compilations.
OwningPtr<CompilationDatabase> Compilations( std::unique_ptr<CompilationDatabase> Compilations(
FixedCompilationDatabase::loadFromCommandLine(argc, argv)); FixedCompilationDatabase::loadFromCommandLine(argc, argv));
cl::ParseCommandLineOptions(argc, argv); cl::ParseCommandLineOptions(argc, argv);

View File

@ -32,7 +32,6 @@
#include "clang/Frontend/ASTUnit.h" #include "clang/Frontend/ASTUnit.h"
#include "clang/Tooling/CompilationDatabase.h" #include "clang/Tooling/CompilationDatabase.h"
#include "clang/Tooling/Tooling.h" #include "clang/Tooling/Tooling.h"
#include "llvm/ADT/OwningPtr.h"
#include "llvm/LineEditor/LineEditor.h" #include "llvm/LineEditor/LineEditor.h"
#include "llvm/Support/CommandLine.h" #include "llvm/Support/CommandLine.h"
#include "llvm/Support/MemoryBuffer.h" #include "llvm/Support/MemoryBuffer.h"
@ -70,8 +69,8 @@ int main(int argc, const char **argv) {
return 1; return 1;
} }
llvm::OwningPtr<CompilationDatabase> Compilations( std::unique_ptr<CompilationDatabase> Compilations(
FixedCompilationDatabase::loadFromCommandLine(argc, argv)); FixedCompilationDatabase::loadFromCommandLine(argc, argv));
if (!Compilations) { // Couldn't find a compilation DB from the command line if (!Compilations) { // Couldn't find a compilation DB from the command line
std::string ErrorMessage; std::string ErrorMessage;
Compilations.reset( Compilations.reset(

View File

@ -100,7 +100,7 @@ ClangTidyASTConsumerFactory::ClangTidyASTConsumerFactory(
for (ClangTidyModuleRegistry::iterator I = ClangTidyModuleRegistry::begin(), for (ClangTidyModuleRegistry::iterator I = ClangTidyModuleRegistry::begin(),
E = ClangTidyModuleRegistry::end(); E = ClangTidyModuleRegistry::end();
I != E; ++I) { I != E; ++I) {
OwningPtr<ClangTidyModule> Module(I->instantiate()); std::unique_ptr<ClangTidyModule> Module(I->instantiate());
Module->addCheckFactories(*CheckFactories); Module->addCheckFactories(*CheckFactories);
} }

View File

@ -124,7 +124,7 @@ private:
SmallVector<ClangTidyCheck *, 8> Checks; SmallVector<ClangTidyCheck *, 8> Checks;
ClangTidyContext &Context; ClangTidyContext &Context;
ast_matchers::MatchFinder Finder; ast_matchers::MatchFinder Finder;
OwningPtr<ClangTidyCheckFactories> CheckFactories; std::unique_ptr<ClangTidyCheckFactories> CheckFactories;
}; };
/// \brief Fills the list of check names that are enabled when the provided /// \brief Fills the list of check names that are enabled when the provided

View File

@ -128,7 +128,7 @@ private:
void finalizeLastError(); void finalizeLastError();
ClangTidyContext &Context; ClangTidyContext &Context;
OwningPtr<DiagnosticsEngine> Diags; std::unique_ptr<DiagnosticsEngine> Diags;
SmallVector<ClangTidyError, 8> Errors; SmallVector<ClangTidyError, 8> Errors;
bool LastErrorRelatesToUserCode; bool LastErrorRelatesToUserCode;
}; };

View File

@ -154,7 +154,6 @@
#include "clang/Lex/Preprocessor.h" #include "clang/Lex/Preprocessor.h"
#include "clang/Tooling/CompilationDatabase.h" #include "clang/Tooling/CompilationDatabase.h"
#include "clang/Tooling/Tooling.h" #include "clang/Tooling/Tooling.h"
#include "llvm/ADT/OwningPtr.h"
#include "llvm/Config/config.h" #include "llvm/Config/config.h"
#include "llvm/Option/Arg.h" #include "llvm/Option/Arg.h"
#include "llvm/Option/ArgList.h" #include "llvm/Option/ArgList.h"
@ -231,7 +230,7 @@ error_code getHeaderFileNames(SmallVectorImpl<std::string> &HeaderFileNames,
HeaderDirectory = HeaderPrefix; HeaderDirectory = HeaderPrefix;
// Read the header list file into a buffer. // Read the header list file into a buffer.
OwningPtr<MemoryBuffer> listBuffer; std::unique_ptr<MemoryBuffer> listBuffer;
if (error_code ec = MemoryBuffer::getFile(ListFileName, listBuffer)) { if (error_code ec = MemoryBuffer::getFile(ListFileName, listBuffer)) {
return ec; return ec;
} }
@ -290,7 +289,7 @@ error_code getHeaderFileNames(SmallVectorImpl<std::string> &HeaderFileNames,
// Helper function for finding the input file in an arguments list. // Helper function for finding the input file in an arguments list.
std::string findInputFile(const CommandLineArguments &CLArgs) { std::string findInputFile(const CommandLineArguments &CLArgs) {
OwningPtr<OptTable> Opts(createDriverOptTable()); std::unique_ptr<OptTable> Opts(createDriverOptTable());
const unsigned IncludedFlagsBitmask = options::CC1Option; const unsigned IncludedFlagsBitmask = options::CC1Option;
unsigned MissingArgIndex, MissingArgCount; unsigned MissingArgIndex, MissingArgCount;
SmallVector<const char *, 256> Argv; SmallVector<const char *, 256> Argv;
@ -298,7 +297,7 @@ std::string findInputFile(const CommandLineArguments &CLArgs) {
E = CLArgs.end(); E = CLArgs.end();
I != E; ++I) I != E; ++I)
Argv.push_back(I->c_str()); Argv.push_back(I->c_str());
OwningPtr<InputArgList> Args( std::unique_ptr<InputArgList> Args(
Opts->ParseArgs(Argv.data(), Argv.data() + Argv.size(), MissingArgIndex, Opts->ParseArgs(Argv.data(), Argv.data() + Argv.size(), MissingArgIndex,
MissingArgCount, IncludedFlagsBitmask)); MissingArgCount, IncludedFlagsBitmask));
std::vector<std::string> Inputs = Args->getAllArgValues(OPT_INPUT); std::vector<std::string> Inputs = Args->getAllArgValues(OPT_INPUT);
@ -725,12 +724,12 @@ int main(int Argc, const char **Argv) {
// Create the compilation database. // Create the compilation database.
SmallString<256> PathBuf; SmallString<256> PathBuf;
sys::fs::current_path(PathBuf); sys::fs::current_path(PathBuf);
OwningPtr<CompilationDatabase> Compilations; std::unique_ptr<CompilationDatabase> Compilations;
Compilations.reset( Compilations.reset(
new FixedCompilationDatabase(Twine(PathBuf), CC1Arguments)); new FixedCompilationDatabase(Twine(PathBuf), CC1Arguments));
// Create preprocessor tracker, to watch for macro and conditional problems. // Create preprocessor tracker, to watch for macro and conditional problems.
OwningPtr<PreprocessorTracker> PPTracker(PreprocessorTracker::create()); std::unique_ptr<PreprocessorTracker> PPTracker(PreprocessorTracker::create());
// Parse all of the headers, detecting duplicates. // Parse all of the headers, detecting duplicates.
EntityMap Entities; EntityMap Entities;

View File

@ -30,7 +30,6 @@
//===---------------------------------------------------------------------===// //===---------------------------------------------------------------------===//
#include "Modularize.h" #include "Modularize.h"
#include "llvm/ADT/OwningPtr.h"
#include "llvm/ADT/SmallString.h" #include "llvm/ADT/SmallString.h"
#include "llvm/Support/FileSystem.h" #include "llvm/Support/FileSystem.h"
#include "llvm/Support/Path.h" #include "llvm/Support/Path.h"
@ -281,7 +280,7 @@ bool createModuleMap(llvm::StringRef ModuleMapPath,
DependencyMap &Dependencies, llvm::StringRef HeaderPrefix, DependencyMap &Dependencies, llvm::StringRef HeaderPrefix,
llvm::StringRef RootModuleName) { llvm::StringRef RootModuleName) {
// Load internal representation of modules. // Load internal representation of modules.
llvm::OwningPtr<Module> RootModule(loadModuleDescriptions( std::unique_ptr<Module> RootModule(loadModuleDescriptions(
RootModuleName, HeaderFileNames, Dependencies, HeaderPrefix)); RootModuleName, HeaderFileNames, Dependencies, HeaderPrefix));
if (!RootModule.get()) if (!RootModule.get())
return false; return false;

View File

@ -126,8 +126,9 @@ int main(int Argc, const char **Argv) {
cl::ParseCommandLineOptions(Argc, Argv, "module-map-checker.\n"); cl::ParseCommandLineOptions(Argc, Argv, "module-map-checker.\n");
// Create checker object. // Create checker object.
OwningPtr<ModuleMapChecker> Checker(ModuleMapChecker::createModuleMapChecker( std::unique_ptr<ModuleMapChecker> Checker(
ModuleMapPath, IncludePaths, DumpModuleMap, CC1Arguments)); ModuleMapChecker::createModuleMapChecker(ModuleMapPath, IncludePaths,
DumpModuleMap, CC1Arguments));
// Do the checks. The return value is the program return code, // Do the checks. The return value is the program return code,
// 0 for okay, 1 for module map warnings produced, 2 for any other error. // 0 for okay, 1 for module map warnings produced, 2 for any other error.
@ -394,7 +395,7 @@ ModuleMapChecker::collectUmbrellaHeaderHeaders(StringRef UmbrellaHeaderName) {
sys::fs::current_path(PathBuf); sys::fs::current_path(PathBuf);
// Create the compilation database. // Create the compilation database.
OwningPtr<CompilationDatabase> Compilations; std::unique_ptr<CompilationDatabase> Compilations;
Compilations.reset(new FixedCompilationDatabase(Twine(PathBuf), CommandLine)); Compilations.reset(new FixedCompilationDatabase(Twine(PathBuf), CommandLine));
std::vector<std::string> HeaderPath; std::vector<std::string> HeaderPath;

View File

@ -25,7 +25,6 @@
#include "clang/Lex/HeaderSearchOptions.h" #include "clang/Lex/HeaderSearchOptions.h"
#include "clang/Lex/ModuleMap.h" #include "clang/Lex/ModuleMap.h"
#include "clang/Lex/Preprocessor.h" #include "clang/Lex/Preprocessor.h"
#include "llvm/ADT/OwningPtr.h"
#include "llvm/ADT/StringSet.h" #include "llvm/ADT/StringSet.h"
#include "llvm/Support/Host.h" #include "llvm/Support/Host.h"
#include <string> #include <string>
@ -82,9 +81,9 @@ class ModuleMapChecker {
/// Options controlling the \#include directive. /// Options controlling the \#include directive.
llvm::IntrusiveRefCntPtr<clang::HeaderSearchOptions> HeaderSearchOpts; llvm::IntrusiveRefCntPtr<clang::HeaderSearchOptions> HeaderSearchOpts;
/// Header search manager. /// Header search manager.
llvm::OwningPtr<clang::HeaderSearch> HeaderInfo; std::unique_ptr<clang::HeaderSearch> HeaderInfo;
/// The module map. /// The module map.
llvm::OwningPtr<clang::ModuleMap> ModMap; std::unique_ptr<clang::ModuleMap> ModMap;
// Internal data. // Internal data.

View File

@ -57,7 +57,6 @@
#include "clang/Lex/Preprocessor.h" #include "clang/Lex/Preprocessor.h"
#include "clang/Tooling/CompilationDatabase.h" #include "clang/Tooling/CompilationDatabase.h"
#include "clang/Tooling/Tooling.h" #include "clang/Tooling/Tooling.h"
#include "llvm/ADT/OwningPtr.h"
#include "llvm/Config/config.h" #include "llvm/Config/config.h"
#include "llvm/Option/Arg.h" #include "llvm/Option/Arg.h"
#include "llvm/Option/ArgList.h" #include "llvm/Option/ArgList.h"
@ -192,7 +191,7 @@ int main(int Argc, const char **Argv) {
// Create the compilation database. // Create the compilation database.
SmallString<256> PathBuf; SmallString<256> PathBuf;
sys::fs::current_path(PathBuf); sys::fs::current_path(PathBuf);
OwningPtr<CompilationDatabase> Compilations; std::unique_ptr<CompilationDatabase> Compilations;
Compilations.reset( Compilations.reset(
new FixedCompilationDatabase(Twine(PathBuf), CC1Arguments)); new FixedCompilationDatabase(Twine(PathBuf), CC1Arguments));

View File

@ -42,7 +42,6 @@
#include "clang/Tooling/CompilationDatabase.h" #include "clang/Tooling/CompilationDatabase.h"
#include "clang/Tooling/Refactoring.h" #include "clang/Tooling/Refactoring.h"
#include "clang/Tooling/Tooling.h" #include "clang/Tooling/Tooling.h"
#include "llvm/ADT/OwningPtr.h"
#include "llvm/ADT/Twine.h" #include "llvm/ADT/Twine.h"
#include "llvm/Support/CommandLine.h" #include "llvm/Support/CommandLine.h"
#include "llvm/Support/MemoryBuffer.h" #include "llvm/Support/MemoryBuffer.h"
@ -179,8 +178,8 @@ cl::list<std::string> SourcePaths(
int main(int argc, const char **argv) { int main(int argc, const char **argv) {
llvm::sys::PrintStackTraceOnErrorSignal(); llvm::sys::PrintStackTraceOnErrorSignal();
llvm::OwningPtr<CompilationDatabase> Compilations( std::unique_ptr<CompilationDatabase> Compilations(
tooling::FixedCompilationDatabase::loadFromCommandLine(argc, argv)); tooling::FixedCompilationDatabase::loadFromCommandLine(argc, argv));
cl::ParseCommandLineOptions(argc, argv); cl::ParseCommandLineOptions(argc, argv);
if (!Compilations) { if (!Compilations) {
std::string ErrorMessage; std::string ErrorMessage;

View File

@ -42,7 +42,6 @@
#include "clang/Tooling/CompilationDatabase.h" #include "clang/Tooling/CompilationDatabase.h"
#include "clang/Tooling/Refactoring.h" #include "clang/Tooling/Refactoring.h"
#include "clang/Tooling/Tooling.h" #include "clang/Tooling/Tooling.h"
#include "llvm/ADT/OwningPtr.h"
#include "llvm/Support/CommandLine.h" #include "llvm/Support/CommandLine.h"
#include "llvm/Support/MemoryBuffer.h" #include "llvm/Support/MemoryBuffer.h"
#include "llvm/Support/Signals.h" #include "llvm/Support/Signals.h"
@ -81,8 +80,8 @@ cl::list<std::string> SourcePaths(
int main(int argc, const char **argv) { int main(int argc, const char **argv) {
llvm::sys::PrintStackTraceOnErrorSignal(); llvm::sys::PrintStackTraceOnErrorSignal();
llvm::OwningPtr<CompilationDatabase> Compilations( std::unique_ptr<CompilationDatabase> Compilations(
FixedCompilationDatabase::loadFromCommandLine(argc, argv)); FixedCompilationDatabase::loadFromCommandLine(argc, argv));
cl::ParseCommandLineOptions(argc, argv); cl::ParseCommandLineOptions(argc, argv);
if (!Compilations) { // Couldn't find a compilation DB from the command line if (!Compilations) { // Couldn't find a compilation DB from the command line
std::string ErrorMessage; std::string ErrorMessage;

View File

@ -105,7 +105,7 @@ private:
StringRef Include; StringRef Include;
VirtualFileHelper VFHelper; VirtualFileHelper VFHelper;
tooling::Replacements &Replaces; tooling::Replacements &Replaces;
OwningPtr<IncludeDirectives> FileIncludes; std::unique_ptr<IncludeDirectives> FileIncludes;
std::string FileToModify; std::string FileToModify;
// if non-null, add the include directives in this file instead of the main // if non-null, add the include directives in this file instead of the main
// file. // file.

View File

@ -25,10 +25,10 @@ using namespace clang::query;
using namespace clang::tooling; using namespace clang::tooling;
TEST(Query, Basic) { TEST(Query, Basic) {
OwningPtr<ASTUnit> FooAST( std::unique_ptr<ASTUnit> FooAST(
buildASTFromCode("void foo1(void) {}\nvoid foo2(void) {}", "foo.cc")); buildASTFromCode("void foo1(void) {}\nvoid foo2(void) {}", "foo.cc"));
ASSERT_TRUE(FooAST.get()); ASSERT_TRUE(FooAST.get());
OwningPtr<ASTUnit> BarAST( std::unique_ptr<ASTUnit> BarAST(
buildASTFromCode("void bar1(void) {}\nvoid bar2(void) {}", "bar.cc")); buildASTFromCode("void bar1(void) {}\nvoid bar2(void) {}", "bar.cc"));
ASSERT_TRUE(BarAST.get()); ASSERT_TRUE(BarAST.get());

View File

@ -50,7 +50,7 @@ template <typename T> std::string runCheckOnCode(StringRef Code) {
return ""; return "";
ast_matchers::MatchFinder Finder; ast_matchers::MatchFinder Finder;
Check.registerMatchers(&Finder); Check.registerMatchers(&Finder);
OwningPtr<tooling::FrontendActionFactory> Factory( std::unique_ptr<tooling::FrontendActionFactory> Factory(
tooling::newFrontendActionFactory(&Finder)); tooling::newFrontendActionFactory(&Finder));
if (!tooling::runToolOnCode(Factory->create(), Code)) if (!tooling::runToolOnCode(Factory->create(), Code))
return ""; return "";

View File

@ -73,7 +73,7 @@ private:
FileManager Files; FileManager Files;
// most tests don't need more than one file // most tests don't need more than one file
llvm::SmallVector<VirtualFile, 1> VirtualFiles; llvm::SmallVector<VirtualFile, 1> VirtualFiles;
llvm::OwningPtr<SourceManager> Sources; std::unique_ptr<SourceManager> Sources;
}; };
} // end namespace clang } // end namespace clang