From 4a3eb43ebb55e0ebedda806571a83ddd12eed806 Mon Sep 17 00:00:00 2001 From: eidheim Date: Sun, 20 Mar 2016 14:08:01 +0100 Subject: [PATCH] Now properly uses std::move in get_language --- src/project.cc | 12 ++++++------ src/project.h | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/project.cc b/src/project.cc index 5d097d0..443fcb7 100644 --- a/src/project.cc +++ b/src/project.cc @@ -106,22 +106,22 @@ std::unique_ptr Project::get_language() { if(view->language) { auto language_id=view->language->get_id(); if(language_id=="markdown") - return std::unique_ptr(new Project::Markdown(build)); + return std::unique_ptr(new Project::Markdown(std::move(build))); if(language_id=="python") - return std::unique_ptr(new Project::Python(build)); + return std::unique_ptr(new Project::Python(std::move(build))); if(language_id=="js") - return std::unique_ptr(new Project::JavaScript(build)); + return std::unique_ptr(new Project::JavaScript(std::move(build))); if(language_id=="html") - return std::unique_ptr(new Project::HTML(build)); + return std::unique_ptr(new Project::HTML(std::move(build))); } } else build=get_build(Directories::get().path); if(dynamic_cast(build.get())) - return std::unique_ptr(new Project::Clang(build)); + return std::unique_ptr(new Project::Clang(std::move(build))); else - return std::unique_ptr(new Project::Language(build)); + return std::unique_ptr(new Project::Language(std::move(build))); } std::pair Project::Clang::get_run_arguments() { diff --git a/src/project.h b/src/project.h index d2fb2d9..51d5bde 100644 --- a/src/project.h +++ b/src/project.h @@ -27,7 +27,7 @@ namespace Project { class Language { public: - Language(std::unique_ptr &build): build(std::move(build)) {} + Language(std::unique_ptr &&build): build(std::move(build)) {} virtual ~Language() {} std::unique_ptr build; @@ -59,7 +59,7 @@ namespace Project { private: Dispatcher dispatcher; public: - Clang(std::unique_ptr &build) : Language(build) {} + Clang(std::unique_ptr &&build) : Language(std::move(build)) {} ~Clang() { dispatcher.disconnect(); } std::pair get_run_arguments() override; @@ -89,7 +89,7 @@ namespace Project { class Markdown : public Language { public: - Markdown(std::unique_ptr &build) : Language(build) {} + Markdown(std::unique_ptr &&build) : Language(std::move(build)) {} ~Markdown(); boost::filesystem::path last_temp_path; @@ -98,21 +98,21 @@ namespace Project { class Python : public Language { public: - Python(std::unique_ptr &build) : Language(build) {} + Python(std::unique_ptr &&build) : Language(std::move(build)) {} void compile_and_run() override; }; class JavaScript : public Language { public: - JavaScript(std::unique_ptr &build) : Language(build) {} + JavaScript(std::unique_ptr &&build) : Language(std::move(build)) {} void compile_and_run() override; }; class HTML : public Language { public: - HTML(std::unique_ptr &build) : Language(build) {} + HTML(std::unique_ptr &&build) : Language(std::move(build)) {} void compile_and_run() override; };