On Friday, 5 April 2013 at 08:57:35 UTC, Namespace wrote:
How so? It does not break anything, as all "const scope" cases can be processed with "const scope ref", in fact, compiler should be allowed to degrade first to latter. Regarding meaning - if "scope ref" means permissive rvalues (mutable ones), then "const scope ref" means closer match for C++ "const &" - constant references that can't escape scope.
What I meant was simply, that users which are using already "in ref" would get then the error: "redundant storage class: ref" because 'in' would contains 'ref' already. That's the whole reason of my rejection. ;)

I am surprised to hear that redundant storage classes are considered an error by dmd :) Makes no sense for me, typical "generic code gen" use case story.

I actually have an impression you do really want exactly "const scope ref" considering frequent references to C++.
No, I like to get 'scope ref' just as much as 'in ref' / 'scope const ref'. Mutable rvalue references are absolutely useful.
How did you get the idea?

Sorry then, I have misunderstood you then. I do want both "scope ref" and "const scope ref" too, but I was thinking that simple easy-to-use shortcut (in) should match most idiomatic and safe use case, and that should be "scope const ref". With an additional benefit of being able to replace values with refs transparently due to storage class/qualifier restrictions.

I don't have strong opinion here, it is just an idea that came to my mind today and felt tempting ;)

Reply via email to