On Tuesday, 12 March 2013 at 20:29:58 UTC, Marco Leise wrote:
Am Tue, 12 Mar 2013 21:08:01 +0100
schrieb "Rob T" <[email protected]>:
It should be a plugin so that components like an alternate GC
can be swapped in and out easily. I hope once shared lib
support becomes available we'll finally see plugins introduced
into dmd.
--rt
Well, you can already today set a proxy for the GC. This
mainly to disable a DLLs GC and make it foward everything to
the main executable's GC, but you can use for other purposes.
It just means an additional indirect function call for every
GC method call.
An alternative is to override all of the exported GC C
functions with your own implementations, so that the linker
will prefer the versions found in your code rather than the
ones in Phobos. But this doesn't allow swapping at runtime.
I don't think you'd want to swap a GC during runtime anyway, but
who knows, so having that ability is probably better than not
having it.
Do you know if there are instructions posted somewhere on how to
override or proxy the GC?
--rt