From 5fef9aadd206dce1d0faa984e66a0c3eb12154dd Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Wed, 14 Dec 2022 19:36:20 +0300 Subject: Add noexcept to move constructors and move assignment operators --- odb/vector.hxx | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'odb/vector.hxx') diff --git a/odb/vector.hxx b/odb/vector.hxx index ac75ef1..3fe7d8a 100644 --- a/odb/vector.hxx +++ b/odb/vector.hxx @@ -91,10 +91,16 @@ namespace odb {return v_.get_allocator ();} #ifdef ODB_CXX11 - vector(vector&& x): vector_base (std::move (x)), v_ (std::move (x.v_)) {} + vector(vector&& x) noexcept + : vector_base (std::move (x)), v_ (std::move (x.v_)) {} + vector(const vector& x, const A& a): vector_base (x), v_ (x.v_, a) {} vector(vector&& x, const A& a) : vector_base (std::move (x)), v_ (std::move (x.v_), a) {} + + // Note: noexcept is not specified since it can throw while reallocating + // impl_. + // vector& operator=(vector&&); #ifdef ODB_CXX11_INITIALIZER_LIST vector(std::initializer_list il, const A& a = A()): v_ (il, a) {} -- cgit v1.1