On Wednesday, 21 June 2017 at 15:34:15 UTC, TheGag96 wrote:
Could it ever be fixed?

Easiest: stick `-m64` in your build. While it is somewhat common in 32 bit, it is very rare in 64 bit.

This comes from the fact that D's GC is conservative - if it sees something that *might* be a pointer, it assumes it *is* a pointer and thus had better not get freed.

Of course, the bug here if you do hit it is a relatively benign one: it will be a memory leak. So you might be able to live with it.

But ketmar and I have done some image work in 32 bit that has hit such problems before, since the image arrays can be kinda large. In those cases, tweaking the GC or using malloc and free on the larger arrays are both solutions. (or, again, recompiling in 64 bit mode for most people).

Reply via email to