Heap allocation and internal pointers

Tobias Pankrath tobias at pankrath.net
Fri Jan 24 04:41:54 PST 2014


On Friday, 24 January 2014 at 12:40:44 UTC, Tobias Pankrath wrote:
> On Monday, 20 January 2014 at 20:20:01 UTC, Steven 
> Schveighoffer wrote:
>> On Mon, 20 Jan 2014 14:58:12 -0500, Dmitry Olshansky 
>> <dmitry.olsh at gmail.com> wrote:
>>
>>> 20-Jan-2014 23:48, Steven Schveighoffer пишет:
>>
>>>> I think this is somewhat too general. It can be GC 
>>>> allocated, even
>>>> GC-array allocated. The GC will not move around your array 
>>>> unexpectedly
>>>> without updating the pointers.
>>>
>>> But a moving collector will happily assume there are no 
>>> internal pointers when moving and won't update them I bet.
>>
>> If we have a moving GC, then we must have precise type info on 
>> every piece of memory that points at the target, otherwise it 
>> cannot possibly move data unsolicited. Why wouldn't that 
>> include the internal pointer?
>>
>> -Steve
>
> I thought internal pointer were forbidden so that we can elide 
> postblits etc. when moving r-values? What about this use case?

Got it myself m(


More information about the Digitalmars-d mailing list