D Editions

Atila Neves atila.neves at gmail.com
Thu Dec 26 09:55:01 UTC 2024


On Monday, 23 December 2024 at 18:07:45 UTC, Timon Gehr wrote:
> On 12/19/24 17:52, Atila Neves wrote:
>> On Thursday, 6 June 2024 at 15:47:50 UTC, Timon Gehr wrote:
>>> [...]
>> 
>> Why do we need to compile all of them? Do we need something 
>> like `__traits(callerEdition)` maybe?
>> ...
>
> It may not be known at library compile time what edition the 
> user will be using, and there may be multiple different users 
> on different editions.

Right, but not all edition-specific branches will need to compile 
in any one given compiler pass, right?

> Maybe, though it does invalidate memory safety guarantees. 
> Another way to deal with it is to require something like 
> `@trusted import` for such modules or to otherwise treat all 
> `@safe` imports from that module as `@system`.

I like both of those ideas.

>> Maybe there will be changes we won't be able to make.
>> 
>
> Maybe, though I think one thing that will often work is to make 
> such calls `@system`.

Right.



More information about the dip.ideas mailing list