我正在用 frama-c 测试这个小程序,但我一直收到同样的错误。我不确定这意味着什么。我对分配一切意味着什么感到特别困惑。
这是带有 ACSL 注释的代码:
// assuming n is nonnegative and even, f returns n
/*@ requires n>=0;
*/
int f(int n) {
int i=0;
while (i<n) {
i+=2;
}
//@ assert i==n;
return i;
}
这是我尝试测试代码时终端所说的内容:
[wp] warning: Missing RTE guards
p3.c:9:[wp] warning: Missing assigns clause (assigns 'everything' instead)
[wp] 1 goal scheduled
[wp] [Alt-Ergo] Goal typed_f_assert : Unknown (Qed:8ms) (54ms)
[wp] Proved goals: 0 / 1
Alt-Ergo: 0 (unknown: 1)