Struct should be invalid after move

Sebastiaan Koppe mail at skoppe.eu
Tue Nov 27 08:00:22 UTC 2018


I have a non-copyable struct and I really want a compiler error 
whenever I access it after it has been moved.

---
struct Handle {
     ...
     @disable this(this);
     ...
}

void main() {
     import std.algorithm : move;
     auto handle = getOne();
     auto second = handle.move;  /// line 14
     auto third = handle.move;    ///  <- compiler error, variable 
handle is invalid after line 14
}
---

I believe this would prevent some nasty bugs when dealing with 
these structs.

What do you think?


More information about the Digitalmars-d mailing list