On Friday, 20 April 2018 at 00:11:25 UTC, Matthias Klumpp wrote:
On Thursday, 19 April 2018 at 18:45:41 UTC, kinke wrote:
[...]
Jup, I did that already, it just took a really long time to run
because when I made the change to print errno I also enabled
detailed GC profiling (via the PRINTF* debug options). Enabling
the INVARIANT option for the GC is completely broken by the
way, I enforced the compile to work by casting to shared, with
the result of the GC locking up forever at the start of the
program.
[...]
I think the order of operations is wrong, here is an example from
containers:
allocator.dispose(buckets);
static if (useGC)
GC.removeRange(buckets.ptr);
If GC triggers between dispose and removeRange, it will likely
segfault.
[1]: https://github.com/dlang-community/containers