On Thursday, 20 March 2014 at 12:51:35 UTC, w0rp wrote:
I'd just like to toss one in there. .dup and .idup for slices and associative arrays. I've seen a few cases where these functions are not nothrow when they could be. (Because OutOfMemoryError is an Error, not an Exception.)
The reasons it's not nothrow is because because dup causes postblit, and postblit could throw.
Of course, by that same token, postblit could be unsafe and impure. It's terribly inconsistent.
Which is another big problem of druntime: Mostly everything in it is done at run-time using typeid, so there is no static inference.
