So, this problem is: A) A compiler / DRuntime bug, orB) A bug in my code (not) triggered by a certain compiler / DRuntime
We actually did change druntime recently to no longer fail when using GC.free from a finalizer (will get ignored now). Maybe that's what fixed it for you w/ a newer version, but at a quick glance I haven't seen any freeing code in destructors.