This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGbedf3a0f5071: [clang-tidy][NFC] Use moves instead of copies when constructing… (authored by njames93).
Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92267/new/ https://reviews.llvm.org/D92267 Files: clang-tools-extra/clang-tidy/ClangTidyOptions.cpp clang-tools-extra/clang-tidy/ClangTidyOptions.h clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
Index: clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp =================================================================== --- clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp +++ clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp @@ -318,9 +318,9 @@ parseConfiguration(Configuration); if (ParsedConfig) return std::make_unique<ConfigOptionsProvider>( - GlobalOptions, + std::move(GlobalOptions), ClangTidyOptions::getDefaults().merge(DefaultOptions, 0), - *ParsedConfig, OverrideOptions, std::move(FS)); + std::move(*ParsedConfig), std::move(OverrideOptions), std::move(FS)); llvm::errs() << "Error: invalid configuration specified.\n" << ParsedConfig.getError().message() << "\n"; return nullptr; @@ -347,8 +347,9 @@ if (Config.getNumOccurrences() > 0) return LoadConfig(Config); - return std::make_unique<FileOptionsProvider>(GlobalOptions, DefaultOptions, - OverrideOptions, std::move(FS)); + return std::make_unique<FileOptionsProvider>( + std::move(GlobalOptions), std::move(DefaultOptions), + std::move(OverrideOptions), std::move(FS)); } llvm::IntrusiveRefCntPtr<vfs::FileSystem> Index: clang-tools-extra/clang-tidy/ClangTidyOptions.h =================================================================== --- clang-tools-extra/clang-tidy/ClangTidyOptions.h +++ clang-tools-extra/clang-tidy/ClangTidyOptions.h @@ -173,9 +173,10 @@ /// returns the same options for all files. class DefaultOptionsProvider : public ClangTidyOptionsProvider { public: - DefaultOptionsProvider(const ClangTidyGlobalOptions &GlobalOptions, - const ClangTidyOptions &Options) - : GlobalOptions(GlobalOptions), DefaultOptions(Options) {} + DefaultOptionsProvider(ClangTidyGlobalOptions GlobalOptions, + ClangTidyOptions Options) + : GlobalOptions(std::move(GlobalOptions)), + DefaultOptions(std::move(Options)) {} const ClangTidyGlobalOptions &getGlobalOptions() override { return GlobalOptions; } @@ -187,7 +188,7 @@ }; class FileOptionsBaseProvider : public DefaultOptionsProvider { -public: +protected: // A pair of configuration file base name and a function parsing // configuration from text in the corresponding format. typedef std::pair<std::string, std::function<llvm::ErrorOr<ClangTidyOptions>( @@ -213,16 +214,15 @@ /// take precedence over ".clang-tidy" if both reside in the same directory. typedef std::vector<ConfigFileHandler> ConfigFileHandlers; - FileOptionsBaseProvider( - const ClangTidyGlobalOptions &GlobalOptions, - const ClangTidyOptions &DefaultOptions, - const ClangTidyOptions &OverrideOptions, - llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem> FS = nullptr); + FileOptionsBaseProvider(ClangTidyGlobalOptions GlobalOptions, + ClangTidyOptions DefaultOptions, + ClangTidyOptions OverrideOptions, + llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem> FS); - FileOptionsBaseProvider(const ClangTidyGlobalOptions &GlobalOptions, - const ClangTidyOptions &DefaultOptions, - const ClangTidyOptions &OverrideOptions, - const ConfigFileHandlers &ConfigHandlers); + FileOptionsBaseProvider(ClangTidyGlobalOptions GlobalOptions, + ClangTidyOptions DefaultOptions, + ClangTidyOptions OverrideOptions, + ConfigFileHandlers ConfigHandlers); protected: void addRawFileOptions(llvm::StringRef AbsolutePath, @@ -243,10 +243,8 @@ class ConfigOptionsProvider : public FileOptionsBaseProvider { public: ConfigOptionsProvider( - const ClangTidyGlobalOptions &GlobalOptions, - const ClangTidyOptions &DefaultOptions, - const ClangTidyOptions &ConfigOptions, - const ClangTidyOptions &OverrideOptions, + ClangTidyGlobalOptions GlobalOptions, ClangTidyOptions DefaultOptions, + ClangTidyOptions ConfigOptions, ClangTidyOptions OverrideOptions, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem> FS = nullptr); std::vector<OptionsSource> getRawOptions(llvm::StringRef FileName) override; @@ -275,9 +273,8 @@ /// If any of the \param OverrideOptions fields are set, they will override /// whatever options are read from the configuration file. FileOptionsProvider( - const ClangTidyGlobalOptions &GlobalOptions, - const ClangTidyOptions &DefaultOptions, - const ClangTidyOptions &OverrideOptions, + ClangTidyGlobalOptions GlobalOptions, ClangTidyOptions DefaultOptions, + ClangTidyOptions OverrideOptions, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem> FS = nullptr); /// Initializes the \c FileOptionsProvider instance with a custom set @@ -297,10 +294,10 @@ /// that can parse configuration from this file type. The configuration files /// in each directory are searched for in the order of appearance in /// \p ConfigHandlers. - FileOptionsProvider(const ClangTidyGlobalOptions &GlobalOptions, - const ClangTidyOptions &DefaultOptions, - const ClangTidyOptions &OverrideOptions, - const ConfigFileHandlers &ConfigHandlers); + FileOptionsProvider(ClangTidyGlobalOptions GlobalOptions, + ClangTidyOptions DefaultOptions, + ClangTidyOptions OverrideOptions, + ConfigFileHandlers ConfigHandlers); std::vector<OptionsSource> getRawOptions(llvm::StringRef FileName) override; }; Index: clang-tools-extra/clang-tidy/ClangTidyOptions.cpp =================================================================== --- clang-tools-extra/clang-tidy/ClangTidyOptions.cpp +++ clang-tools-extra/clang-tidy/ClangTidyOptions.cpp @@ -195,14 +195,13 @@ } ConfigOptionsProvider::ConfigOptionsProvider( - const ClangTidyGlobalOptions &GlobalOptions, - const ClangTidyOptions &DefaultOptions, - const ClangTidyOptions &ConfigOptions, - const ClangTidyOptions &OverrideOptions, + ClangTidyGlobalOptions GlobalOptions, ClangTidyOptions DefaultOptions, + ClangTidyOptions ConfigOptions, ClangTidyOptions OverrideOptions, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem> FS) - : FileOptionsBaseProvider(GlobalOptions, DefaultOptions, OverrideOptions, - FS), - ConfigOptions(ConfigOptions) {} + : FileOptionsBaseProvider(std::move(GlobalOptions), + std::move(DefaultOptions), + std::move(OverrideOptions), std::move(FS)), + ConfigOptions(std::move(ConfigOptions)) {} std::vector<OptionsSource> ConfigOptionsProvider::getRawOptions(llvm::StringRef FileName) { @@ -227,24 +226,25 @@ } FileOptionsBaseProvider::FileOptionsBaseProvider( - const ClangTidyGlobalOptions &GlobalOptions, - const ClangTidyOptions &DefaultOptions, - const ClangTidyOptions &OverrideOptions, + ClangTidyGlobalOptions GlobalOptions, ClangTidyOptions DefaultOptions, + ClangTidyOptions OverrideOptions, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem> VFS) - : DefaultOptionsProvider(GlobalOptions, DefaultOptions), - OverrideOptions(OverrideOptions), FS(std::move(VFS)) { + : DefaultOptionsProvider(std::move(GlobalOptions), + std::move(DefaultOptions)), + OverrideOptions(std::move(OverrideOptions)), FS(std::move(VFS)) { if (!FS) FS = llvm::vfs::getRealFileSystem(); ConfigHandlers.emplace_back(".clang-tidy", parseConfiguration); } FileOptionsBaseProvider::FileOptionsBaseProvider( - const ClangTidyGlobalOptions &GlobalOptions, - const ClangTidyOptions &DefaultOptions, - const ClangTidyOptions &OverrideOptions, - const FileOptionsBaseProvider::ConfigFileHandlers &ConfigHandlers) - : DefaultOptionsProvider(GlobalOptions, DefaultOptions), - OverrideOptions(OverrideOptions), ConfigHandlers(ConfigHandlers) {} + ClangTidyGlobalOptions GlobalOptions, ClangTidyOptions DefaultOptions, + ClangTidyOptions OverrideOptions, + FileOptionsBaseProvider::ConfigFileHandlers ConfigHandlers) + : DefaultOptionsProvider(std::move(GlobalOptions), + std::move(DefaultOptions)), + OverrideOptions(std::move(OverrideOptions)), + ConfigHandlers(std::move(ConfigHandlers)) {} void FileOptionsBaseProvider::addRawFileOptions( llvm::StringRef AbsolutePath, std::vector<OptionsSource> &CurOptions) { @@ -286,20 +286,20 @@ } FileOptionsProvider::FileOptionsProvider( - const ClangTidyGlobalOptions &GlobalOptions, - const ClangTidyOptions &DefaultOptions, - const ClangTidyOptions &OverrideOptions, + ClangTidyGlobalOptions GlobalOptions, ClangTidyOptions DefaultOptions, + ClangTidyOptions OverrideOptions, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem> VFS) - : FileOptionsBaseProvider(GlobalOptions, DefaultOptions, OverrideOptions, - VFS){} + : FileOptionsBaseProvider(std::move(GlobalOptions), + std::move(DefaultOptions), + std::move(OverrideOptions), std::move(VFS)) {} FileOptionsProvider::FileOptionsProvider( - const ClangTidyGlobalOptions &GlobalOptions, - const ClangTidyOptions &DefaultOptions, - const ClangTidyOptions &OverrideOptions, - const FileOptionsBaseProvider::ConfigFileHandlers &ConfigHandlers) - : FileOptionsBaseProvider(GlobalOptions, DefaultOptions, OverrideOptions, - ConfigHandlers) {} + ClangTidyGlobalOptions GlobalOptions, ClangTidyOptions DefaultOptions, + ClangTidyOptions OverrideOptions, + FileOptionsBaseProvider::ConfigFileHandlers ConfigHandlers) + : FileOptionsBaseProvider( + std::move(GlobalOptions), std::move(DefaultOptions), + std::move(OverrideOptions), std::move(ConfigHandlers)) {} // FIXME: This method has some common logic with clang::format::getStyle(). // Consider pulling out common bits to a findParentFileWithName function or
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits