Most basic nothrow, pure, @safe functions?

monarch_dodra monarchdodra at gmail.com
Thu Mar 20 06:37:11 PDT 2014


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.


More information about the Digitalmars-d mailing list