On 02/06/2013 11:14 PM, Andrei Alexandrescu wrote:
On 2/6/13 5:05 PM, Timon Gehr wrote:
On 02/06/2013 08:12 PM, Andrei Alexandrescu wrote:
It would be more consistent with C++, but less so with the notion of
safety. I find it very consistent that all uses of &expression are safe,
and this is the kind of consistency Walter and I believe is worth aiming
for.
So you are saying this should compile?:
struct S{
int x;
int foo()@safe{ return x; }
}
int delegate()@safe foo()@safe{
S s;
return &s.foo;
}
Yah, it should, and it also should detect the escape and allocate foo's
frame on the heap.
Andrei
I see. Generally?
Eg. this detects the escape and allocates as well?:
S* foo()@safe{
S s;
return &s;
}