On Wednesday, 28 February 2018 at 22:34:07 UTC, Dukc wrote:
I don't think a just iterated array is automatically set to
null, so taking it's pointer won't hit a memory-proteted area.
So undeprectating arr.ptr in @safe would break @safety and be a
step backward.
If it cannot be proven safe by the compiler but is safe anyway it
doesn't break @safe, it should just be @trusted. That's what
@trusted is about, not about abusing functions to trick unsafe
things into compiling @safe-ly.
If this is an issue, one can define a @trusted function which
takes a starting pointer from array and casts it to size_t
before returning it so memory corruption cannot happen via it.
On Tuesday, 27 February 2018 at 09:47:51 UTC, Stefan Koch wrote:
Checking if an array is the slice of another.
For that there is also std.array.overlap().