On 27/01/2015 02:27, Jonathan M Davis via Digitalmars-d wrote:
You're right. I forgot about those two. But it's still the case that the
number of function attributes that don't have @ on them is_far_ greater
than the number of those that do.
But I explained that most function attributes don't only apply to
functions but to variables as well:
public, protected, package, private, static, const,
immutable, inout, and deprecated
So it can be consistent that the above don't use @.
These only affect functions, not variables, so should be @attributes IMO:
final, override, abstract
These affect both:
return, ref
So if we want some kind of consistency, we can achieve it by adding @
for final, override, abstract, and removing it for 'return'.