```d
class S {}
class A:S {}
class B:S {}

mixin template vmix(T)
{
    void visit(T t) {}
}

class Visitor
{
    void visit(S s) {}
    mixin vmix!A;
    mixin vmix!B;
}

class AnotherVisitor: Visitor
{
    override void visit(A a) {}
}
```

This will result in error when I try to override mixin generated visit(A) in AnotherVisitor.

If A doesn't inherit S, the override in AnotherVisitor works like a charm.


Bug or feature? Is there any workaround?




Reply via email to