Thread overview |
---|
December 03, 2006 [Issue 630] New: Obscure, unimplemented features related to in/out contracts | ||||
---|---|---|---|---|
| ||||
http://d.puremagic.com/issues/show_bug.cgi?id=630 Summary: Obscure, unimplemented features related to in/out contracts Product: D Version: 0.175 Platform: All URL: http://www.digitalmars/com/d/dbc.html OS/Version: All Status: NEW Keywords: spec Severity: major Priority: P2 Component: DMD AssignedTo: bugzilla@digitalmars.com ReportedBy: smjg@iname.com OtherBugsDependingO 511 nThis: Issue 302 talks of a long-unimplemented part of D: inheritance of in/out contracts. This is about some lesser-known DBC features that are in the D spec. "The compiler can be adjusted to verify that every in and inout parameter is referenced in the in { }, and every out and inout parameter is referenced in the out { }." Admittedly, this seems pointless (leading to convoluted code just to use all the variables), but it's there. "The in-out statement can also be used inside a function, for example, it can be used to check the results of a loop:" There are workarounds for this, but that doesn't excuse anything. I vaguely recall Walter mentioning an intention to remove these from the spec, but nothing's happened about this either way. -- |
December 03, 2006 [Issue 630] Obscure, unimplemented features related to in/out contracts | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=630 deewiant@gmail.com changed: What |Removed |Added ---------------------------------------------------------------------------- URL|http://www.digitalmars/com/d|http://www.digitalmars.com/d |/dbc.html |/dbc.html ------- Comment #1 from deewiant@gmail.com 2006-12-03 03:03 ------- "The in-out statement can also be used inside a function, for example, it can be used to check the results of a loop:" It is noted in the spec that "[t]his is not implemented at this time." The parameter-checking paragraph could use such a comment as well. -- |
December 03, 2006 [Issue 630] Obscure, unimplemented features related to in/out contracts | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=630 ------- Comment #2 from larsivar@igesund.net 2006-12-03 03:47 ------- (In reply to comment #1) > It is noted in the spec that "[t]his is not implemented at this time." The parameter-checking paragraph could use such a comment as well. > The spec has for a long time been the documentation for the compiler, which is the wrong way to do it. The spec is a spec, and whether there exists a compiler that implements it or not, should not be part of it. DMD's own documentation, should mention it though. -- |
December 03, 2006 [Issue 630] Obscure, unimplemented features related to in/out contracts | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=630 smjg@iname.com changed: What |Removed |Added ---------------------------------------------------------------------------- Flag| |d1.0blocker? ------- Comment #3 from smjg@iname.com 2006-12-03 06:08 ------- Whether DMD's documentation mentions it doesn't alter the fact that the fact that DMD doesn't implement it is a bug. Because DMD is supposed to be a D compiler, not a some-subset-of-D compiler. -- |
December 27, 2006 [Issue 630] Obscure, unimplemented features related to in/out contracts | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=630 bugzilla@digitalmars.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED ------- Comment #4 from bugzilla@digitalmars.com 2006-12-27 01:59 ------- Fixed DMD 0.178 -- |
Copyright © 1999-2021 by the D Language Foundation