On Sunday, 4 October 2020 at 23:06:58 UTC, Ola Fosheim Grøstad
wrote:
> You need to know the implementation as parameters can alias
> with globals accessed by the function. So not caller only.
As-is with all refs today:
struct S { int a; }
int* p;
int foo(const scope ref S s)
{
*p = 123;
return s.a;
}
void main()
{
S s;
p = &s.a;
assert(foo(s) == 0); // oops
}