Hard-to-reproduce GC bug

Walter Bright newshound1 at digitalmars.com
Mon Dec 8 11:39:48 PST 2008


Leandro Lucarella wrote:
> Walter Bright, el  7 de diciembre a las 16:04 me escribiste:
>> Walter Bright wrote:
>>> Steven Schveighoffer wrote:
>>>> I'd say most likely that the GC doesn't see anything declared as __thread, so when you use that pointer as the only reference to GC allocated data, it 
>>>> doesn't see that it's still in use, and will collect.
>>> Looks like I need to do some research to see how the gc can discover the extent of tls data.
>> I've got this working now for Windows and Linux for the main program (not for dll's or shared libraries).
> 
> I saw the change[1] and I wonder why there are mentions to the DMD
> implementation. Shouldn't that be implementation agnostic, being in the
> "common" part of the runtime? I guess _tlsstart and _tlsend should be
> added to the runtime specification[2] too, right?

I was more concerned about getting it to work right. <g>



More information about the Digitalmars-d mailing list