On Mon, 03 Aug 2009 16:22:40 +0400, Michiel Helvensteijn
<[email protected]> wrote:
Denis Koroskin wrote:
Then I assume you still want to restrict the precondition to being the
first element in the body? Because putting it in there suggests that it
may appear anywhere a statement can.
Why not?
Because a function precondition indicates the set of admissible states
before execution of a function. Emphasis on *before* and *function*.
Allowing them anywhere inside a function body will only improve the
feature.
BTW, it is already allowed, just use 'debug' instead of 'in':
Suggested way:
int foo(int a) {
in {
assert(a>2);
}
return a-1;
}
My way:
int foo(int a) {
debug {
assert(a>2);
}
return a-1;
}
TBH, I'd just drop the whole DBC feature from a language, it creates more
problems than solves.