On Thursday, 4 May 2017 at 08:41:55 UTC, Atila Neves wrote:
I took a look at this. It's a druntime problem. Unique.~this
calls std.experimental.allocator.dispose, which calls destroy
in object.d which calls rt_finalize:
extern (C) void rt_finalize(void *data, bool det=true);
Notice the lack of `@nogc` in the declaration. Adding the
annotation should fix the problem, assuming the implementation
is in fact `@nogc`. I'll file a bug and PR to fix it.