On Wednesday, 26 July 2017 at 08:20:42 UTC, Shachar Shemesh wrote:
void fn(scope int* var) @safe {
(*var)++;
}
void fn2() @safe {
int a;
fn();
}
The above program does not compile:
d.d(8): Error: cannot take address of local a in @safe function
fn2
I propose that the scope
void fn(scope int* var) @safe {
(*var)++;
}
void fn2() @safe {
int a;
fn();
}
The above program does not compile:
d.d(8): Error: cannot take address of local a in @safe function fn2
I propose that the scope keyword be activated to mean "I do not pass the
pointer you gave me out