// verifast_options{disable_overflow_check target:ILP32} extern void abort(void); //@ requires true; //@ ensures true; void reach_error() //@ requires false; //@ ensures true; {} void __VERIFIER_assert(int cond) //@ requires ((0 <= cond) && (cond <= 3)); //@ ensures ((0 <= cond) && (cond <= 3)); { if (!(cond)) { ERROR: {reach_error();abort();} } return; } int main() //@ requires module(nested5_1__verifast_instrumented, true); //@ ensures junk(); { //@ open_module(); unsigned int x = 0; unsigned int y = 0; unsigned int z = 0; unsigned int w = 0; unsigned int v = 0; for(w=0;w<0x0fffffff;w++) for(x=0;x< 10;x++) for(y=0;y< 10;y++) for(z=0;z< 10;z++) { for(v=0;v< 10;v++) //@ invariant ((v == 0) || (((v + 4294967295) % 4294967296) < 10)); ; __VERIFIER_assert(v % 4); } return 0; }