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

Reply via email to