Hard-to-reproduce GC bug
Sean Kelly
sean at invisibleduck.org
Mon Dec 8 11:36:36 PST 2008
== Quote from Leandro Lucarella (llucax at gmail.com)'s article
> 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?
That or runtime functions for the equivalent. Either way, the compiler runtime will have to
define something.
> BTW, the change broke the indentation style of druntime :S
I'll take care of it :p
Sean
More information about the Digitalmars-d
mailing list