D-Programming-Language/dmd — pull request #4200 by nemanja-boric-sociomantic (2014-12-08 12:12:47+00:00)
Title: Use in contract from base class if not specified in derived

In case when in contract is not specified in the derived class,
and base class does specify a contract, base contract should
not be silently ignored:

```
class Base
{
void foo()
in
{
assert(false);
}
body
{

}
}

class Derived: Base
{
override void foo()
{
}
}

void main()
{
auto o = new Derived();
o.foo(); // Should fail
}

```

Old behaviour can be brought back with `in{}` in `Derived.foo`.

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