From: Ronen Friedman Date: Thu, 28 Sep 2023 12:04:06 +0000 (-0500) Subject: osd: fix a missing 'noexcept' on a move ctor X-Git-Tag: v19.0.0~5^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F53712%2Fhead;p=ceph.git osd: fix a missing 'noexcept' on a move ctor as a non-default, non-noexcept move ctor is ignored by stl containers. See clang-tidy's performance-noexcept-move-constructor Signed-off-by: Ronen Friedman --- diff --git a/src/osd/PG.h b/src/osd/PG.h index 2e82e74ab01..5f071817d3d 100644 --- a/src/osd/PG.h +++ b/src/osd/PG.h @@ -1446,10 +1446,13 @@ public: */ class PGLockWrapper { public: - explicit PGLockWrapper(PGRef locked_pg) : m_pg{locked_pg} {} + template + explicit PGLockWrapper(A_PG_REF&& locked_pg) + : m_pg{std::forward(locked_pg)} + {} PGRef pg() { return m_pg; } ~PGLockWrapper(); - PGLockWrapper(PGLockWrapper&& rhs) : m_pg(std::move(rhs.m_pg)) { + PGLockWrapper(PGLockWrapper&& rhs) noexcept : m_pg(std::move(rhs.m_pg)) { rhs.m_pg = nullptr; } PGLockWrapper(const PGLockWrapper& rhs) = delete;