-preview=in might break code

Steven Schveighoffer schveiguy at gmail.com
Fri Oct 2 14:08:29 UTC 2020


Is there a way to prevent this?

import std.stdio;
struct S(size_t elems)
{
     int[elems] data;
}

void foo(T)(in T constdata, ref T normaldata)
{
     normaldata.data[0] = 1;
     writeln(constdata.data[0]);
}
void main()
{
     S!1 smallval;
     foo(smallval, smallval);
     S!100 largeval;
     foo(largeval, largeval);
}


Compile without -preview=in, it prints:

0
0

Compile with -preview=in, it prints:

0
1

-Steve


More information about the Digitalmars-d mailing list