source: CIVL/examples/focus/simpleFor.cvl@ c2b37db

1.23 2.0 main test-branch
Last change on this file since c2b37db was c2b37db, checked in by Alex Wilton <awilton@…>, 9 months ago

Merged focus branch into trunk.

git-svn-id: svn://vsl.cis.udel.edu/civl/trunk@5988 fb995dde-84ed-4084-dfe6-e5aef3e2452c

  • Property mode set to 100644
File size: 408 bytes
Line 
1#include<assert.h>
2#include<mem.cvh>
3
4#pragma CIVL ACSL
5$input int N;
6$assume(0 < N);
7int a[N];
8
9int main() {
10
11 int x = 0;
12 // Note loop variable i should auto-include into unfocus.
13 /*@ loop invariant x == i;
14 @ loop assigns a[0..N-1],x;
15 @*/
16 //@ focus F | a[F];
17 for (int i = 0; i < N; i++) {
18 a[i] = i + x;
19 x = x+1;
20 }
21
22 //@ focus F;
23 $assert($forall(int i:0..N-1) a[i] == i+i);
24}
Note: See TracBrowser for help on using the repository browser.