[Issue 7584] contract checking is too conservative for inherited contracts
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Sun Feb 26 08:29:04 PST 2012
http://d.puremagic.com/issues/show_bug.cgi?id=7584
--- Comment #5 from deadalnix <deadalnix at gmail.com> 2012-02-26 08:28:57 PST ---
(In reply to comment #4)
> LSP is not violated. That is the point. The rules proposed here are sufficient
> to guarantee LSP. The rules that are currently employed are too conservative.
> Think about it.
>
> void main(){
> Foo foo = new Bar;
> foo.foo(0); // call ok, returns 0
> // foo.foo(1); // _call_ not ok, violates in contract
> }
>
> Also see issue 6857.
issue 6857 is a valid point. I just did a post about that on the newsgroup.
It means, in the proposed example, that the in contract should fail. So the out
contract never reached.
You definitively have a point here.
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
More information about the Digitalmars-d-bugs
mailing list