Shortcut evaluation for hierarchy of in contracts
David Nadlinger
see at klickverbot.at
Fri Jul 1 08:16:41 PDT 2011
On 7/1/11 5:18 PM, Timon Gehr wrote:
> There are 4 possibilities:
> 1. Both parent and child contract would pass.
> 2. Parent passes, child would fail.
> 3. Parent fails, child passes.
> 4. Parent fails, child fails.
>
> The only case where any statement can be made is case 3: "Contracts are certainly
> well-formed".
> You cannot deduce the well- or ill-formedness of the contracts from any of the
> other outcomes.
In my opinion, one *is* able to declare the child contract invalid in
case 2 – if the parent passes but the child fails, it certainly violates
the »loosening« property of in contract inheritance. If you don't think
so, could you please explain your doubts in more detail?
David
More information about the Digitalmars-d
mailing list