Out of memory error (even when using destroy())
Mike B Johnson via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Fri May 26 11:06:42 PDT 2017
On Friday, 26 May 2017 at 14:05:34 UTC, ag0aep6g wrote:
> On 05/26/2017 10:15 AM, realhet wrote:
>> But hey, the GC knows that is should not search for any
>> pointers in those large blocks.
>> And the buffer is full of 0-s at the start, so there can't be
>> any 'false pointers' in it. And I think the GC will not search
>> in it either.
>
> The issue is not that the block contains a false pointer, but
> that there's a false pointer elsewhere that points into the
> block. The bigger the block, the more likely it is that
> something (e.g. an int on the stack) is mistaken for a pointer
> into it.
Wow, if that is the case then the GC has some real issues. The GC
should be informed about all pointers and an int is not a pointer.
More information about the Digitalmars-d-learn
mailing list