dsimcha wrote:
I'm having issues where it appears that the D2 druntime GC ignores roots located in thread-local storage when determining what objects are alive. This leads to spurious deletion of objects in certain cases. This is clearly a GC issue, since disabling the GC solves it, but I can't figure out how to reproduce it in a canonical way. Has anyone else run into anything like this?
Weird. The actual storage for TLS in druntime is an array of void* within the Thread class. I can't imagine that it wouldn't be scanned by the GC. Do you have a reproducible test case?
Sean