Why is there no throws, @gc, impure, mutable ?
invalid at example.com
Mon Sep 7 12:35:25 UTC 2020
On Monday, 7 September 2020 at 11:44:40 UTC, Paul Backus wrote:
> On Monday, 7 September 2020 at 11:25:15 UTC, wjoe wrote:
>> It's easy to declare the entire module @safe and functions
>> which can't be can be declared @system.
>> However there is const, immutable, pure, @nogc and nothrow but
>> no mutable, impure, @gc and throws.
>> Why is that ?
> Mostly because nobody's bothered to add them (yet). There's an
> accepted proposal to add a "throw" attribute as the opposite of
> nothrow , but it looks like it still hasn't been implemented
> in the compiler.
> For const and immutable, you can use std.traits.Unconst  to
> remove them in most cases.
Very interesting. Thanks.
More information about the Digitalmars-d-learn