diff --git a/include/pybind11/cast.h b/include/pybind11/cast.h index d45b49c52..4cc94aa48 100644 --- a/include/pybind11/cast.h +++ b/include/pybind11/cast.h @@ -1491,7 +1491,7 @@ private: type_id()); #endif } - args_list.append(o); + args_list.append(std::move(o)); } void process(list &args_list, detail::args_proxy ap) { diff --git a/include/pybind11/numpy.h b/include/pybind11/numpy.h index 7624c9fbf..d45fe4280 100644 --- a/include/pybind11/numpy.h +++ b/include/pybind11/numpy.h @@ -640,9 +640,9 @@ private: list names, formats, offsets; for (auto &descr : field_descriptors) { - names.append(descr.name); - formats.append(descr.format); - offsets.append(descr.offset); + names.append(std::move(descr.name)); + formats.append(std::move(descr.format)); + offsets.append(std::move(descr.offset)); } return dtype(std::move(names), std::move(formats), std::move(offsets), itemsize); } diff --git a/include/pybind11/stl.h b/include/pybind11/stl.h index 3d1ca7ac2..51b57a92b 100644 --- a/include/pybind11/stl.h +++ b/include/pybind11/stl.h @@ -79,7 +79,7 @@ struct set_caster { for (auto &&value : src) { auto value_ = reinterpret_steal( key_conv::cast(forward_like(value), policy, parent)); - if (!value_ || !s.add(value_)) { + if (!value_ || !s.add(std::move(value_))) { return handle(); } }