diff options
author | Murray Cumming <murrayc@murrayc.com> | 2017-07-21 08:40:04 +0200 |
---|---|---|
committer | Murray Cumming <murrayc@murrayc.com> | 2017-07-21 08:40:06 +0200 |
commit | 4986e90562311e91b23a451bcc2cb9edd50fdaca (patch) | |
tree | 399cbd291f4bdac4dc51c650dc9c1a9ac4701ecc | |
parent | 3ff8ca086fdb327c3f87a8d61a19a5cd8e826926 (diff) | |
download | sigc++-4986e90562311e91b23a451bcc2cb9edd50fdaca.tar.gz |
Tests: Add comments by uses after move.
Because we really do want to test this.
We do not explicitly promise that it's safe to use moved-from libsigc++
objects, but we choose to make it safe.
-rw-r--r-- | tests/test_signal_move.cc | 4 | ||||
-rw-r--r-- | tests/test_slot_move.cc | 4 | ||||
-rw-r--r-- | tests/test_trackable_move.cc | 4 |
3 files changed, 6 insertions, 6 deletions
diff --git a/tests/test_signal_move.cc b/tests/test_signal_move.cc index 82080c1..83a6316 100644 --- a/tests/test_signal_move.cc +++ b/tests/test_signal_move.cc @@ -35,14 +35,14 @@ main(int argc, char* argv[]) // Test the move constructor: sigc::signal<int(int)> sig2(std::move(sig)); - sig(-2); + sig(-2); // Test that the moved-from slot does nothing. sig2(2); util->check_result(result_stream, "foo(int 2)"); // Test the move assignment operator: sigc::signal<int(int)> sig3; sig3 = std::move(sig2); - sig2(-3); + sig2(-3); // Test that the moved-from slot does nothing. sig3(3); util->check_result(result_stream, "foo(int 3)"); diff --git a/tests/test_slot_move.cc b/tests/test_slot_move.cc index f1bec22..d207172 100644 --- a/tests/test_slot_move.cc +++ b/tests/test_slot_move.cc @@ -43,14 +43,14 @@ main(int argc, char* argv[]) // test move constructor: sigc::slot<void(int)> s2(std::move(s1)); - s1(-2); + s1(-2); // Test that the moved-from slot does nothing. s2(2); util->check_result(result_stream, "foo(int 2)"); // test move assignment: sigc::slot<void(int)> s3; s3 = std::move(s2); - s2(-3); + s2(-3); // Test that the moved-from slot does nothing. s3(3); util->check_result(result_stream, "foo(int 3)"); diff --git a/tests/test_trackable_move.cc b/tests/test_trackable_move.cc index 90e3aa2..daf80ce 100644 --- a/tests/test_trackable_move.cc +++ b/tests/test_trackable_move.cc @@ -23,11 +23,11 @@ public: src.i = 0; } - my_class& operator=(my_class&& src) + my_class& operator=(my_class&& src) noexcept { sigc::trackable::operator=(std::move(src)); i = std::move(src.i); - src.i = 0; + src.i = 0; // Make the moved-from object zeroed. Undefined behaviour would be acceptable too. return *this; } |