Index: source/ps/Future.h =================================================================== --- source/ps/Future.h +++ source/ps/Future.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2021 Wildfire Games. +/* Copyright (C) 2022 Wildfire Games. * This file is part of 0 A.D. * * 0 A.D. is free software: you can redistribute it and/or modify @@ -77,7 +77,7 @@ { static constexpr bool VoidResult = std::is_same_v; public: - SharedState(std::function&& func) : m_Func(func) {} + SharedState(std::function&& func) : m_Func(std::move(func)) {} ~SharedState() { // For safety, wait on started task completion, but not on pending ones (auto-cancelled). @@ -175,11 +175,11 @@ using Status = FutureSharedStateDetail::Status; using SharedState = FutureSharedStateDetail::SharedState; public: - Future() {}; + Future() = default; Future(const Future& o) = delete; Future(Future&&) = default; Future& operator=(Future&&) = default; - ~Future() {} + ~Future() = default; /** * Make the future wait for the result of @a func. @@ -272,7 +272,7 @@ static constexpr bool VoidResult = std::is_same_v; public: PackagedTask() = delete; - PackagedTask(const std::shared_ptr::SharedState>& ss) : m_SharedState(ss) {} + PackagedTask(std::shared_ptr::SharedState> ss) : m_SharedState(std::move(ss)) {} void operator()() { Index: source/ps/TaskManager.h =================================================================== --- source/ps/TaskManager.h +++ source/ps/TaskManager.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2021 Wildfire Games. +/* Copyright (C) 2022 Wildfire Games. * This file is part of 0 A.D. * * 0 A.D. is free software: you can redistribute it and/or modify @@ -67,7 +67,7 @@ Future> PushTask(T&& func, TaskPriority priority = TaskPriority::NORMAL) { Future> ret; - DoPushTask(std::move(ret.Wrap(std::move(func))), priority); + DoPushTask(ret.Wrap(std::move(func)), priority); return ret; } Index: source/ps/TaskManager.cpp =================================================================== --- source/ps/TaskManager.cpp +++ source/ps/TaskManager.cpp @@ -1,4 +1,4 @@ -/* Copyright (C) 2021 Wildfire Games. +/* Copyright (C) 2022 Wildfire Games. * This file is part of 0 A.D. * * 0 A.D. is free software: you can redistribute it and/or modify @@ -166,7 +166,7 @@ m->SetupWorkers(numberOfWorkers); } -TaskManager::~TaskManager() {} +TaskManager::~TaskManager() = default; TaskManager::Impl::Impl(TaskManager& backref) : m_TaskManager(backref)