void abort() { }; extern int __VERIFIER_nondet_int(); /*@ requires ((cond != 0)) && (cond != 0); ensures ((cond != 0)) && (1); @*/ void __VERIFIER_assert(int cond) { if (!(cond)) { ERROR: {/*@ assert(0); */;abort();} } return; } int main() { unsigned int x = 1; /*@ loop invariant (((((long long) x + 1) % 2) < 1)); @*/ while (__VERIFIER_nondet_int()) { x += 2; } __VERIFIER_assert(x % 2); return 0; }