'Auto can only be used for template function arguments' what?

Jonathan M Davis jmdavisProg at gmx.com
Tue Jun 26 22:30:00 PDT 2012


On Wednesday, June 27, 2012 14:27:08 kenji hara wrote:
> 2012/6/27 Jonathan M Davis <jmdavisProg at gmx.com>:
> > On Wednesday, June 27, 2012 07:02:28 Mehrdad wrote:
> >> On Wednesday, 27 June 2012 at 04:26:08 UTC, Jonathan M Davis
> >> 
> >> wrote:
> >> > And how would that work? auto ref duplicates the function. If
> >> > you pass it an lvalue, then it generates a ref version.
> >> 
> >> Two solutions:
> >> 
> >> - Turn 'auto ref' into 'ref', but simply have the compiler
> >> generate a copy for the caller if he wants to pass by value?
> > 
> > That at least sounds like it would work. Walter may have a reason why it
> > doesn't though, since he's the one that said that he didn't think that it
> > was possible. Maybe he just didn't think of it, or maybe it causes some
> > other problem that I can't think of.
> 
> After considering about 'auto ref', I was concluded that is an
> inconsistency of current language spec and we cannot fix it correctly.
> 
> http://d.puremagic.com/issues/show_bug.cgi?id=8204
> 
> Therefore, I have created a thread to suggest new 'auto ref' recently.
> http://forum.dlang.org/thread/CAFDvkcvf6G8Mc01Tds6ydXqCZbfp1q-a-oeFVk6BGEtwC
> iUAqg at mail.gmail.com

If it can be done, I'm all for it. We really need a solution to this problem, 
and conceptually, auto ref was a good idea, it just hasn't worked thus far.

- Jonathan M Davis


More information about the Digitalmars-d mailing list