https://issues.dlang.org/show_bug.cgi?id=14389

--- Comment #5 from Daniel Čejchan <czda...@gmail.com> ---
n reply to Ketmar Dark from comment #3)
> or simply introduce syntax to "unattribute" something. this is much more
> useful, imo, and not breaking any existing code.
> 
> this is very sad situation, as we can override `@safe`/`@trusted`/`@system`,
> but has no way to override `static`, or `final`, or `pure`, or `nothrow`,
> or...

Unattribute notation would make the code even more messy imo. One would have to
remember not only all the attributes he defined before, but also which ones he
removed and which he hasn't. That method would also practically double the need
of text writing for all attributes except for the cases where you want the
attribute to apply till the end. In overwhelming majority of cases in my
programming experience, I don't want it. I want just a portion of code to have
the same attribute and I want to avoid using {} notation because it makes the
code ugly. Not to mention you could forget unattributing some attributes, which
could make a mess in the code and there would be nomway how to chceck it,
because not removing it would be legitime intent.

--

Reply via email to