DIP69: problem with scope grammar - need a new keyword
deadalnix via Digitalmars-d
digitalmars-d at puremagic.com
Mon Dec 8 11:57:19 PST 2014
On Monday, 8 December 2014 at 10:37:29 UTC, Walter Bright wrote:
> On 12/8/2014 1:52 AM, deadalnix wrote:
>> On Monday, 8 December 2014 at 09:46:03 UTC, Walter Bright
>> wrote:
>>> I thought I could make this work, but it's a problem. There
>>> are two meanings
>>> for scope when attached to a function:
>>>
>>> T func() scope; // the 'this' pointer is 'scope'
>>> scope T func(); // the function returns a 'scope' T
>>>
>>> I have some ideas, but don't particularly like any of them.
>>> But I don't want
>>> to bias things, so what ideas do you guys have?
>>
>> I'm arguing for ages that qualifier before the return type
>> qualify the return
>> type, and the one after the implicit argument. I stand by this.
>
> Another problem with that is:
>
> void func(scope T delegate() dg);
Nop. I actually made a proposal that was more complete and
handled such case.
qualifier on the left qualify the return type. qualifier in
between return type and function/delegate qualify both the symbol
and the context (it implicit parameter) and qualifier on the
right qualify only the context.
More information about the Digitalmars-d
mailing list