D issues are now tracked on GitHub. This Bugzilla instance remains as a read-only archive.
Issue 21845 - Wrong ParameterStorageClass when -preview=in is used
Summary: Wrong ParameterStorageClass when -preview=in is used
Status: RESOLVED FIXED
Alias: None
Product: D
Classification: Unclassified
Component: dmd (show other issues)
Version: D2
Hardware: x86_64 Linux
: P1 enhancement
Assignee: No Owner
URL:
Keywords: pull
Depends on:
Blocks:
 
Reported: 2021-04-21 15:09 UTC by omerfirmak
Modified: 2021-04-25 20:59 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description omerfirmak 2021-04-21 15:09:48 UTC
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 Dlang Bot 2021-04-21 15:19:56 UTC
@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 Dlang Bot 2021-04-22 04:02:12 UTC
@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 Dlang Bot 2021-04-22 05:09:56 UTC
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 Dlang Bot 2021-04-25 20:59:54 UTC
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