Comment #0 by dlang-bugzilla — 2014-11-12T21:44:51Z
As our GC is non-reentrant, allocating during a GC run (when invoked by the GC for finalization) is invalid. Thus, onFinalizeError should use the same pattern as onOutOfMemoryError to avoid allocating memory.
Comment #1 by dlang-bugzilla — 2014-11-12T22:02:29Z
onFinalizeError needs to chain the caught exception, thus we can't use the same pattern as onOutOfMemoryError.