Article: Running D without its runtime

Guillaume Piolat via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Thu Nov 10 03:27:21 PST 2016


Thanks for reading!

On Thursday, 10 November 2016 at 06:08:22 UTC, thedeemon wrote:
> This is the schizophrenic part of D, since allocations inside 
> destructors are not allowed by its own runtime and cause 
> immediate stop of the program.

But this restriction is only there when called by the GC. If you 
have GC and a deterministic object graph, it can be completely 
safe to allocate in destructor.
I feel this is a separate problem, "GC calling destructors".

> And exceptions in destructors should not be allowed: there is 
> no sane place to catch and handle exceptions arising during the 
> GC phase (which can be triggered by arbitrary allocation 
> anywhere in the code), so if we can't reason about them and 
> handle them we shouldn't allow them.

Good point.


More information about the Digitalmars-d-announce mailing list