On Tue, 08 Jan 2013 07:11:30 +0100 "deadalnix" <deadal...@gmail.com> wrote:
> On Tuesday, 8 January 2013 at 05:29:15 UTC, Nick Sabalausky wrote: > > On Mon, 07 Jan 2013 17:18:11 -0800 > > Walter Bright <newshou...@digitalmars.com> wrote: > > > >> On 1/7/2013 3:19 PM, Nick Sabalausky wrote: > >> > On Thu, 03 Jan 2013 17:08:58 +0100 > >> > "deadalnix" <deadal...@gmail.com> wrote: > >> >> > >> >> However, it is just to discover that this do not work : > >> >> > >> >> struct Bar {} > >> >> auto foo(ref Bar bar) {} > >> >> > >> >> foo(Bar()); // Now this is an error ! > >> >> > >> >> I still have code broken all over the place. > >> > > >> > IIRC, they tried to include this change in 2.060 (or was it > >> > 2.059?), > >> > but due to the major problems it causes, and the fact that > >> > it *does* > >> > make sense to use a temporary as an lvalue if you don't > >> > intend to > >> > use it again afterwords, there was a big discussion about it > >> > on the > >> > beta list and it was ultimately nixed. I'm disappointed to > >> > see that > >> > it snuck back. > >> > > >> > >> Well, fixing the rvalue ref problem is still on the front > >> burner. > > > > Wait, so are you saying that the above code which stopped > > working in > > 2.061 will start working again in a later version? > > No, I think he meant that breaking that code was actually fixing > the language because it shouldn't have worked in a first place > (thing I disagree with but I understand the reasoning). So then what's this "rvalue ref problem" that's "still on the front burner"?