DIP69: problem with scope grammar - need a new keyword

via Digitalmars-d digitalmars-d at puremagic.com
Mon Dec 8 02:43:48 PST 2014


On Monday, 8 December 2014 at 10:34:42 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.
>
> The trouble with that is, for example, 
> __traits(getFuncAttributes, ...) which will return "scope" for 
> both cases.

Why would it? A qualifier/stc for the implicit `this` parameter 
is not a function attribute.


More information about the Digitalmars-d mailing list