blob: 2222c35592703d3d9446e0f98c2f19ec95992985 [file] [log] [blame]
/* REQUIRED_ARGS: -dw
* PERMUTE_ARGS:
* TEST_OUTPUT:
---
compilable/fix17349.d(37): Deprecation: cannot implicitly override base class method `fix17349.E.foo` with `fix17349.F.foo`; add `override` attribute
---
*/
// https://issues.dlang.org/show_bug.cgi?id=17349
struct S { }
class C {
void bar();
void foo(void* p);
void abc(Object);
void def(S);
}
class D : C {
override void bar() const;
override void foo(const void*);
override void abc(const Object);
override void def(const S);
}
alias fp_t = void function(int*);
@safe void abc(const int*);
fp_t fp = &abc;
class E {
void foo(void*);
}
class F : E {
void foo(const void*);
}