On Sunday, 29 May 2016 at 11:16:57 UTC, Dicebot wrote:
On 05/28/2016 09:58 PM, Iakh wrote:
Yeah. It doesn't capture any context. But once it does it
would be an error.
Custom allocators are not very suitable for things like
closures because of undefined lifetime. Even if it was allowed
to replace allocator, you would be limited to either GC or RC
based one anyway to keep things @safe.
Maybe an interface for a ref counting allocator (that leverages
Andrei's idea to use AffixAllocator's interface for storing RC
metadata) can be used, provided that the interface is in druntime
and the compiler knows how to use it.
BTW, AffixAllocator's interface abstracts whether the metadata is
stored next to the allocation or in a separate area, but the
current design needs to be fixed w.r.t to shared-ness, because it
breaks the type system:
http://forum.dlang.org/post/bscksxwxuvzefymbi...@forum.dlang.org