Re: Escaping address of

2018-04-12 Thread Nick Treleaven via Digitalmars-d-learn
On Thursday, 12 April 2018 at 00:32:49 UTC, Uknown wrote: Adding a destructor makes the compiler return an error about lifetimes, with or without -dip1000 Thanks. Filed, mentioning this: https://issues.dlang.org/show_bug.cgi?id=18756

Re: Escaping address of

2018-04-11 Thread Uknown via Digitalmars-d-learn
On Wednesday, 11 April 2018 at 16:25:20 UTC, Jonathan M Davis wrote: [...] Adding a destructor makes the compiler return an error about lifetimes, with or without -dip1000 https://run.dlang.io/is/ddXqNu

Re: Escaping address of

2018-04-11 Thread Jonathan M Davis via Digitalmars-d-learn
On Wednesday, April 11, 2018 16:08:06 Nick Treleaven via Digitalmars-d-learn wrote: > Is this a known bug? With v2.079.0, with or without -dip1000: > > @safe unittest > { > struct S > { > int i; > } > auto p = ().i; > } > > The address of field `i` should not escape,

Escaping address of

2018-04-11 Thread Nick Treleaven via Digitalmars-d-learn
Is this a known bug? With v2.079.0, with or without -dip1000: @safe unittest { struct S { int i; } auto p = ().i; } The address of field `i` should not escape, right? It's also incorrectly allowed when using an lvalue of S (when -dip1000 is not present).