Bug 21845 – Wrong ParameterStorageClass when -preview=in is used

Status
RESOLVED
Resolution
FIXED
Severity
enhancement
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
x86_64
OS
Linux
Creation time
2021-04-21T15:09:48Z
Last change time
2021-04-25T20:59:54Z
Keywords
pull
Assigned to
No Owner
Creator
omerfirmak

Comments

Comment #0 by omerfirmak — 2021-04-21T15:09:48Z
When -preview=in causes a parameter to be passed by reference ParameterStorageClassTuple reports the storage class as ref_ instead of in_. ---------------- import std; struct Foo { int a; double[100] b; } void func1 (in Foo foo); void func2 (const ref Foo foo); void main() { writeln(ParameterStorageClassTuple!func1); writeln(ParameterStorageClassTuple!func2); } -------------
Comment #1 by dlang-bot — 2021-04-21T15:19:56Z
@omerfirmak created dlang/dmd pull request #12457 "Fix Issue 21845 - Make `in` take precedence in getParameterStorageCla…" fixing this issue: - Fix Issue 21845 - Make `in` take precedence in getParameterStorageClasses https://github.com/dlang/dmd/pull/12457
Comment #2 by dlang-bot — 2021-04-22T04:02:12Z
@Geod24 created dlang/dmd pull request #12458 "Fix Issue 21845 - Make `in` take precedence in getParameterStorageClasses" fixing this issue: - Fix Issue 21845 - Make `in` take precedence in getParameterStorageClasses https://github.com/dlang/dmd/pull/12458
Comment #3 by dlang-bot — 2021-04-22T05:09:56Z
dlang/dmd pull request #12458 "Fix Issue 21845 - Make `in` take precedence in getParameterStorageClasses" was merged into stable: - 23333399783b5d8deb9edcb518c562c91404b833 by Ömer Faruk Irmak: Fix Issue 21845 - Make `in` take precedence in getParameterStorageClasses https://github.com/dlang/dmd/pull/12458
Comment #4 by dlang-bot — 2021-04-25T20:59:54Z
dlang/dmd pull request #12473 "merge stable" was merged into master: - 03c30609389c5dce7e22ce39e8a176081e3e9c10 by Ömer Faruk Irmak: Fix Issue 21845 - Make `in` take precedence in getParameterStorageClasses https://github.com/dlang/dmd/pull/12473