Local pointer escape under current DIP1000 implementation

Andrei Alexandrescu via Digitalmars-d digitalmars-d at puremagic.com
Fri May 5 04:22:07 PDT 2017


On 5/5/17 12:51 PM, Yuxuan Shui wrote:
> Code:
> 
> @safe auto id(scope int *p) {
>      int*[] a;
>      a ~= p;
>      return a;
> }
> @safe int *bar() {
>      int i;
>      return id(&i)[0]; //pointer to local escaped
> }
> 
> Compiles with -dip1000

Cool, thanks. Will discuss with Walter right now. Looks like an 
oversight - the append is not supposed to go through. -- Andrei


More information about the Digitalmars-d mailing list