DIP1000 spec?

Steven Schveighoffer schveiguy at gmail.com
Fri Jun 12 12:49:08 UTC 2020


I was just looking through the DIPs in the system, and noticed that 
DIP1000 is "superseded".

I thought that was odd, since it's in the compiler as a switch and is a 
major driver of discussion and hope for memory safety.

In the DIP it says [1]:

"This DIP did not complete the review process. It was left in Draft 
status for an extended period. During that time, an implementation of 
the proposal was released. It diverged significantly enough from the 
proposal that the decsion was made by the Language Maintainers, who are 
also coauthors of the DIP, to retire the DIP as "Superseded" rather than 
rewriting it."

So where is the documentation that describes what is actually 
implemented? The section on Scope and Return parameters [2] in the spec 
is pretty light compared to the DIP text, and only addresses parameters, 
not locals.

Without full documentation in the spec, it can be difficult to know 
whether something should or should not be a bug.

-Steve

[1] 
https://github.com/dlang/DIPs/blob/e64bd0adfd3f6617038e214c82bc5093f2d33aea/DIPs/other/DIP1000.md#formal-assessment

[2] https://dlang.org/spec/memory-safe-d.html#scope-return-params


More information about the Digitalmars-d-learn mailing list