void abort() { }; extern int __VERIFIER_nondet_int(); /*@ requires ((1 == cond)) && (cond != 0); ensures ((1 == cond)) && (1); @*/ void __VERIFIER_assert(int cond) { if (!cond) { ERROR: { /*@ assert(0); */; abort(); } } else { } return; } void func_to_recursive_line_13_to_14_0(unsigned int *x) { if (__VERIFIER_nondet_int()) { { *x += 8; } func_to_recursive_line_13_to_14_0(x); } else { } } int main() { unsigned int x = 5; func_to_recursive_line_13_to_14_0(&x); __VERIFIER_assert((x & 5) == 5); return 0; }