Code below compiles while I would not expect it to compile.
Is there a reason that this compiles?

Specs are a bit lite on abstract classes.
Only thing I found that would need to allow this is: "19.4 functions without bodies" https://dlang.org/spec/function.html#function-declarations
But that's explicitly without the abstract keyword..


class I {
  abstract void f();
}

class C : I {
}

unittest {
  C c = cast(C) Object.factory("C");
  c.f();
}


I also couldn't find anything about this in the issue tracker.


Reply via email to