diff options
-rw-r--r-- | sord/sordmm.hpp | 10 | ||||
-rw-r--r-- | wscript | 1 |
2 files changed, 10 insertions, 1 deletions
diff --git a/sord/sordmm.hpp b/sord/sordmm.hpp index a9a8f91..c4236d5 100644 --- a/sord/sordmm.hpp +++ b/sord/sordmm.hpp @@ -423,7 +423,17 @@ Node::to_bool() const struct Iter : public Wrapper<SordIter*> { inline Iter(World& world, SordIter* c_obj) : Wrapper<SordIter*>(c_obj), _world(world) {} + + Iter(const Iter&) = delete; + Iter& operator=(const Iter&) = delete; + + inline Iter(Iter&& iter) + : Wrapper<SordIter*>(iter) + , _world(iter._world) + {} + inline ~Iter() { sord_iter_free(_c_obj); } + inline bool end() const { return sord_iter_end(_c_obj); } inline bool next() const { return sord_iter_next(_c_obj); } inline Iter& operator++() { @@ -106,7 +106,6 @@ def configure(conf): '-Wno-multiple-inheritance', ], 'clang': [ - '-Wno-deprecated-copy-dtor', '-Wno-implicit-float-conversion', ], 'msvc': [ |