On Wednesday, 3 February 2016 at 18:04:38 UTC, Andrei Alexandrescu wrote:
On 02/03/2016 10:05 AM, Sönke Ludwig wrote:
For std.move, isn't the only place where an exception can be thrown in the destructor (which shouldn't throw)? It uses memcpy to move the
memory around to circumvent any extended construction logic.

Destructors in D are allowed to throw (thanks to exception chaining), but now I realize we need to amend that - the destructor of T.init should not be allowed to throw. -- Andrei

If this becomes the case, please make destructors nothrow so that people won't screw up (like they can very easily do in C++).

Reply via email to