DIP 1028---Make @safe the Default---Community Review Round 1

Steven Schveighoffer schveiguy at gmail.com
Mon Jan 13 20:37:33 UTC 2020

On 1/2/20 4:47 AM, Mike Parker wrote:
> This is the feedback thread for the first round of Community Review for 
> DIP 1028, "Make @safe the Default":
> https://github.com/dlang/DIPs/blob/1b705f8d4faa095d6d9e3a1b81d6cfa6d688554b/DIPs/DIP1028.md 
> All review-related feedback on and discussion of the DIP should occur in 
> this thread. The review period will end at 11:59 PM ET on January 16, or 
> when I make a post declaring it complete.
> At the end of Round 1, if further review is deemed necessary, the DIP 
> will be scheduled for another round of Community Review. Otherwise, it 
> will be queued for the Final Review and Formal Assessment.
> Anyone intending to post feedback in this thread is expected to be 
> familiar with the reviewer guidelines:
> https://github.com/dlang/DIPs/blob/master/docs/guidelines-reviewers.md
> *Please stay on topic!*
> Thanks in advance to all who participate.

How does the DIP affect interfaces and class virtual functions? 
Especially interfaces without marking will be a potential problem as 
there will be no errors on a @system interface stub which now is tagged 
with @safe but has no implementation to complain about. But an 
implementing class would fail to compile potentially (and might be in a 
separate project). This is a fundamental API difference that's not easy 
to account for. The DIP should address that process.

I noticed that even templated class member functions are currently 
@system unless tagged @safe (for good reason). So there's going to be a 
lot of code out there like this.


More information about the Digitalmars-d mailing list