Make const, immutable, inout, and shared illegal as function attributes on the left-hand side of a function
Joseph Rushton Wakeling via Digitalmars-d
digitalmars-d at puremagic.com
Sun Oct 12 02:28:49 PDT 2014
On 11/10/14 11:16, Walter Bright via Digitalmars-d wrote:
> On 10/10/2014 4:16 PM, Joseph Rushton Wakeling via Digitalmars-d wrote:
>> I agree with that general sentiment, but doesn't this patch only deprecate
>> left-hand-side function attributes?
>
> Only some of them, others remain:
>
> pure int foo() { ... }
Not good. If LHS function attributes are to be deprecated, it really ought to
be all or nothing.
>> I don't particularly mind you refusing it, but deprecation (in support of good
>> stylistic practice) isn't breaking.
>
> Deprecation means it'll be removed.
Hmm, maybe I've misunderstood the deprecation process. It was my understanding
that, to remove a feature or function, it was necessary to deprecate it first;
but that deprecation would not necessarily always lead to deletion.
I may be thinking too specifically of Phobos, where it's obviously much easier
to deprecate a module without ever removing it.
More information about the Digitalmars-d
mailing list