[Issue 23175] -preview=in silently adds possible stack memory escape

d-bugmail at puremagic.com d-bugmail at puremagic.com
Fri Jun 10 17:45:10 UTC 2022


https://issues.dlang.org/show_bug.cgi?id=23175

--- Comment #3 from Paul Backus <snarwin+bugzilla at gmail.com> ---
Some historical context:

Prior to 2013-02-06, the spec defined `in` as a no-op attribute (likely a
holdover from D1).

On 2013-02-06, in commit 26d4aec9c [1], `in` was defined as equivalent to
`const scope`. 

On 2018-01-25, in commit 71ad1b38d [2], the spec was changed to define `in` as
equivalent to `const`. The commit message refers to issue 17928, which contains
some relevant discussion.

On 2018-06-14, in commit 93411bed2 [3], the spec was changed to define `in` as
`const scope`, with a note that the current implementation treated it as
equivalent to `const`.

On 2020-08-16, in commit 52e211539 [4], the spec was changed to its current
wording, which documents `-preview=in` and says that `in` parameters "behave as
though" they are `const scope`.

[1]: https://github.com/dlang/dlang.org/commit/26d4aec9c
[2]: https://github.com/dlang/dlang.org/commit/71ad1b38d
[3]: https://github.com/dlang/dlang.org/commit/93411bed2
[4]: https://github.com/dlang/dlang.org/commit/52e211539

--


More information about the Digitalmars-d-bugs mailing list