<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Aug 15, 2016 at 1:57 PM, ZombineDev via Digitalmars-d-announce <span dir="ltr"><<a href="mailto:digitalmars-d-announce@puremagic.com" target="_blank">digitalmars-d-announce@puremagic.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><span class="">On Monday, 15 August 2016 at 10:27:00 UTC, Dicebot wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
On Monday, 15 August 2016 at 07:19:00 UTC, lobo wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
When was it deprecated? I use it a lot and DMD 2.071.1 gives no warning.<br>
</blockquote>
<br>
It was planned for removal because it was very un-@safe (no escaping checks whatsoever) and as such was not better than library implementation.<br></blockquote></span></blockquote><div><br></div><div>import std.stdio;<br></div><div><br></div><div>class Rnd {</div><div><span class="" style="white-space:pre">  </span>this() {</div><div><span class="" style="white-space:pre">           </span>writeln("created");</div><div><span class="" style="white-space:pre">      </span>}</div><div><span class="" style="white-space:pre">  </span>~this() {</div><div><span class="" style="white-space:pre">          </span>writeln("destroyed");</div><div><span class="" style="white-space:pre">    </span>}</div><div><br></div><div><span class="" style="white-space:pre"> </span>int i;</div><div>}</div><div><br></div><div>auto test() {</div><div><span class="" style="white-space:pre">        </span>scope rnd  = new Rnd; // reference semantic and stack allocated<span class="" style="white-space:pre">  </span></div><div><span class="" style="white-space:pre">   </span>auto rnd2 = rnd;</div><div><br></div><div><span class="" style="white-space:pre">  </span>rnd.i = 2;</div><div><span class="" style="white-space:pre"> </span>assert(rnd2.i == 2);</div><div><span class="" style="white-space:pre">       </span>return rnd2;</div><div>}</div><div><br></div><div>void main() {</div><div><span class="" style="white-space:pre">  </span>writeln("start test");</div><div><span class="" style="white-space:pre">   </span>auto v = test();</div><div><span class="" style="white-space:pre">   </span>writeln("test exited", v);</div><div>} </div><div><br></div><div>Output:</div><div><div>start test</div><div>created</div><div>destroyed</div><div>segmentation fault (core dumped)  rdmd scoped_ref_class_semantics.d</div></div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><span class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
</blockquote>
<br></span>
I suspected as much.<span class=""><br>
<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
Quite likely with DIP1000 implemented there will be no point in deprecating it anymore.<br>
</blockquote>
<br></span>
+1 I think that would be great!<br>
<br>
<br>
</blockquote></div><br></div><div class="gmail_extra">The above example should not compile after DIP1000? If so that will be great!</div></div>