[Issue 14389] The "(attributelist):" attribute notation scope of effect

via Digitalmars-d-bugs digitalmars-d-bugs at puremagic.com
Wed Apr 1 21:27:04 PDT 2015


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

--- Comment #3 from Ketmar Dark <ketmar at ketmar.no-ip.org> ---
or simply introduce syntax to "unattribute" something. this is much more
useful, imo, and not breaking any existing code.

by the way:

class C {
private:
@safe:
  void foo() {}

public:
  void asd() @system {} // I don't want this stuff to be @safe!
  // wow, `@system` overrides `@safe` here!
}

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...

but:
class C {
final:
  void foo() {}

static:
  void bad() {}

!final:
!static:
  void asd() {} // virtual method, wow!
}

the open question is what `!public` means, for example. i guess it's `private`.

--


More information about the Digitalmars-d-bugs mailing list