extern void abort(void); extern void __assert_fail(const char *, const char *, unsigned int, const char *) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__noreturn__)); void reach_error() { __assert_fail("0", "invert_string-2.c", 3, "reach_error"); } void __VERIFIER_assert(int cond) { if (!(cond)) { ERROR: {reach_error();abort();} } return; } char __VERIFIER_nondet_char(); unsigned int __VERIFIER_nondet_uint(); int main() { int MAX = __VERIFIER_nondet_uint(); char str1[MAX], str2[MAX]; int cont, i, j; cont = 0; for (i=0; i= 0; i--) { str2[j] = str1[0]; j++; } j = MAX-1; for (i=0; i