accept @pure @nothrow @return attributes
Jonathan Marler via Digitalmars-d
digitalmars-d at puremagic.com
Wed Jan 28 11:33:30 PST 2015
On Wednesday, 28 January 2015 at 19:29:25 UTC, Daniel Kozak wrote:
>> I would think the reason would be it could make the grammar
>> ambiguous. That's why I proposed it only be valid on the
>> right hand side of the function to guarantee it doesn't
>> introduce any ambiguity. Other then that, I don't see any
>> reason why it's a bad thing. It doesn't make the syntax more
>> complicated, it doesn't maker it harder to parse, I just don't
>> see why its bad.
>
> Thats not possible:
>
> @safe {
> void some func() // now valid
> }
>
> safe:
> void some func() // now valid
>
>
>
> safe {
> void some func() // could not be valid
> }
>
> safe:
> void some func() // could not be valid
>
>
> So you need more places where keyword needs to be contextual
> keyword
>
> And this is a path I am not sure we want to go.
None of those cases would valid. Non-Keyword attributes without
a '@' must be on the right hand side of the function parameters.
void some func(); // some is not a keyword, so it is invalid
More information about the Digitalmars-d
mailing list