diff --git a/src/plugins/e-acsl/misc.ml b/src/plugins/e-acsl/misc.ml index 719707304b160f506ce197b5af31eb5009f6c7f2..8cb157d0d62775175559a050ad825df3ace4a5bb 100644 --- a/src/plugins/e-acsl/misc.ml +++ b/src/plugins/e-acsl/misc.ml @@ -59,7 +59,7 @@ let mk_e_acsl_guard ?(reverse=false) kind e p = (Pretty_utils.sfprintf "%a@?" Cil.d_predicate_named) p in let line = (fst loc).Lexing.pos_lnum in - let e = if reverse then new_exp ~loc:e.eloc (UnOp(LNot, e, intType)) else e in + let e = if reverse then e else new_exp ~loc:e.eloc (UnOp(LNot, e, intType)) in mk_call ~loc "e_acsl_assert" diff --git a/src/plugins/e-acsl/share/e-acsl/e_acsl.h b/src/plugins/e-acsl/share/e-acsl/e_acsl.h index 76c024ea13f57f3c2b55e7ae6e2768677d6fc08b..91e52a86c0b7e07463d08d91be4546513ccb0edd 100644 --- a/src/plugins/e-acsl/share/e-acsl/e_acsl.h +++ b/src/plugins/e-acsl/share/e-acsl/e_acsl.h @@ -36,8 +36,9 @@ extern int printf(const char *, ...); /* Dedicated E-ACSL function */ /*****************************/ +/*@ requires predicate != 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n", kind, line, pred_txt); exit(1); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.1.res.oracle index 72477dd8610c8e2df60b6c6a6b0abac63ace125b..3bd2589edfffa65dbdef2cee69c3e76cb69454da 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.1.res.oracle @@ -2,9 +2,10 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:234:[value] Assertion got status valid. +PROJECT_FILE.i:235:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:235. + Called from PROJECT_FILE.i:236. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -21,9 +22,10 @@ PROJECT_FILE.i:234:[value] Assertion got status valid. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -37,7 +39,7 @@ int main(void) int x; x = 0; /*@ assert &x ≡ &x; */ ; - e_acsl_assert(! (& x == & x),(char *)"Assertion",(char *)"(&x == &x)",9); + e_acsl_assert(& x == & x,(char *)"Assertion",(char *)"(&x == &x)",9); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.res.oracle index 72477dd8610c8e2df60b6c6a6b0abac63ace125b..3bd2589edfffa65dbdef2cee69c3e76cb69454da 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.res.oracle @@ -2,9 +2,10 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:234:[value] Assertion got status valid. +PROJECT_FILE.i:235:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:235. + Called from PROJECT_FILE.i:236. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -21,9 +22,10 @@ PROJECT_FILE.i:234:[value] Assertion got status valid. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -37,7 +39,7 @@ int main(void) int x; x = 0; /*@ assert &x ≡ &x; */ ; - e_acsl_assert(! (& x == & x),(char *)"Assertion",(char *)"(&x == &x)",9); + e_acsl_assert(& x == & x,(char *)"Assertion",(char *)"(&x == &x)",9); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.1.res.oracle index c85391c6a7ea9dcbdbc51337658f9c3d8fd8274c..2e932beb96c1aeeea419c7dc91ae80f926602103 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.1.res.oracle @@ -12,156 +12,129 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:236:[value] Assertion got status valid. +PROJECT_FILE.i:237:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:242. + Called from PROJECT_FILE.i:243. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:243. + Called from PROJECT_FILE.i:244. PROJECT_FILE.i:69:[value] Function __gmpz_init: postcondition got status valid. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. PROJECT_FILE.i:128:[value] Function __gmpz_neg: precondition got status valid. PROJECT_FILE.i:129:[value] Function __gmpz_neg: precondition got status valid. [value] Done for function __gmpz_neg [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:245. + Called from PROJECT_FILE.i:246. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:247. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:248. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:249. + Called from PROJECT_FILE.i:250. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:250. + Called from PROJECT_FILE.i:251. [value] Done for function __gmpz_clear -PROJECT_FILE.i:254:[value] Assertion got status valid. +PROJECT_FILE.i:255:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:260. + Called from PROJECT_FILE.i:261. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:261. + Called from PROJECT_FILE.i:262. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:262. + Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:263. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_neg [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:264. + Called from PROJECT_FILE.i:265. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:265. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:266. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:266. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:267. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:268. [value] Done for function __gmpz_clear -PROJECT_FILE.i:272:[value] Assertion got status valid. +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:269. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:273:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_init [value] computing for function __gmpz_com <- main. - Called from PROJECT_FILE.i:279. + Called from PROJECT_FILE.i:280. PROJECT_FILE.i:167:[value] Function __gmpz_com: precondition got status valid. PROJECT_FILE.i:168:[value] Function __gmpz_com: precondition got status valid. [value] Done for function __gmpz_com [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:280. + Called from PROJECT_FILE.i:281. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:281. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:282. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:282. + Called from PROJECT_FILE.i:283. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:283. + Called from PROJECT_FILE.i:284. [value] Done for function __gmpz_clear -PROJECT_FILE.i:287:[value] Assertion got status valid. +PROJECT_FILE.i:288:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:295. + Called from PROJECT_FILE.i:296. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:296. + Called from PROJECT_FILE.i:297. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:297. + Called from PROJECT_FILE.i:298. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:298. + Called from PROJECT_FILE.i:299. PROJECT_FILE.i:133:[value] Function __gmpz_add: precondition got status valid. PROJECT_FILE.i:134:[value] Function __gmpz_add: precondition got status valid. PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid. [value] Done for function __gmpz_add [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:299. + Called from PROJECT_FILE.i:300. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:300. + Called from PROJECT_FILE.i:301. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:301. + Called from PROJECT_FILE.i:302. [value] Done for function __gmpz_neg [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:302. + Called from PROJECT_FILE.i:303. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:303. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:304. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:304. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:305. [value] Done for function __gmpz_clear @@ -174,47 +147,41 @@ PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid. [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:308. [value] Done for function __gmpz_clear -PROJECT_FILE.i:312:[value] Assertion got status valid. +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:309. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:313:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:320. + Called from PROJECT_FILE.i:321. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:321. + Called from PROJECT_FILE.i:322. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:322. + Called from PROJECT_FILE.i:323. [value] Done for function __gmpz_init [value] computing for function __gmpz_sub <- main. - Called from PROJECT_FILE.i:323. + Called from PROJECT_FILE.i:324. PROJECT_FILE.i:139:[value] Function __gmpz_sub: precondition got status valid. PROJECT_FILE.i:140:[value] Function __gmpz_sub: precondition got status valid. PROJECT_FILE.i:141:[value] Function __gmpz_sub: precondition got status valid. [value] Done for function __gmpz_sub [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:324. + Called from PROJECT_FILE.i:325. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:325. + Called from PROJECT_FILE.i:326. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:326. + Called from PROJECT_FILE.i:327. [value] Done for function __gmpz_neg [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:327. + Called from PROJECT_FILE.i:328. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:328. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:329. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:329. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:330. [value] Done for function __gmpz_clear @@ -227,47 +194,41 @@ PROJECT_FILE.i:141:[value] Function __gmpz_sub: precondition got status valid. [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:333. [value] Done for function __gmpz_clear -PROJECT_FILE.i:337:[value] Assertion got status valid. +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:334. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:338:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:345. + Called from PROJECT_FILE.i:346. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:346. + Called from PROJECT_FILE.i:347. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:347. + Called from PROJECT_FILE.i:348. [value] Done for function __gmpz_init [value] computing for function __gmpz_mul <- main. - Called from PROJECT_FILE.i:348. + Called from PROJECT_FILE.i:349. PROJECT_FILE.i:145:[value] Function __gmpz_mul: precondition got status valid. PROJECT_FILE.i:146:[value] Function __gmpz_mul: precondition got status valid. PROJECT_FILE.i:147:[value] Function __gmpz_mul: precondition got status valid. [value] Done for function __gmpz_mul [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:349. + Called from PROJECT_FILE.i:350. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:350. + Called from PROJECT_FILE.i:351. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:351. + Called from PROJECT_FILE.i:352. [value] Done for function __gmpz_neg [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:352. + Called from PROJECT_FILE.i:353. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:353. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:354. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:354. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:355. [value] Done for function __gmpz_clear @@ -280,64 +241,52 @@ PROJECT_FILE.i:147:[value] Function __gmpz_mul: precondition got status valid. [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:358. [value] Done for function __gmpz_clear -PROJECT_FILE.i:362:[value] Assertion got status valid. -[value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:372. -[value] Done for function __gmpz_init_set_si +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:359. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:363:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. Called from PROJECT_FILE.i:373. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. Called from PROJECT_FILE.i:374. [value] Done for function __gmpz_init_set_si -[value] computing for function __gmpz_cmp <- main. +[value] computing for function __gmpz_init_set_si <- main. Called from PROJECT_FILE.i:375. +[value] Done for function __gmpz_init_set_si +[value] computing for function __gmpz_cmp <- main. + Called from PROJECT_FILE.i:376. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:376. + Called from PROJECT_FILE.i:377. [value] Done for function __gmpz_init -PROJECT_FILE.i:377:[value] Assertion got status valid. +PROJECT_FILE.i:378:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:378. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:379. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_tdiv_q <- main. - Called from PROJECT_FILE.i:379. + Called from PROJECT_FILE.i:380. PROJECT_FILE.i:151:[value] Function __gmpz_tdiv_q: precondition got status valid. PROJECT_FILE.i:152:[value] Function __gmpz_tdiv_q: precondition got status valid. PROJECT_FILE.i:153:[value] Function __gmpz_tdiv_q: precondition got status valid. [value] Done for function __gmpz_tdiv_q [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:380. + Called from PROJECT_FILE.i:381. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:381. + Called from PROJECT_FILE.i:382. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:382. + Called from PROJECT_FILE.i:383. [value] Done for function __gmpz_neg [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:383. + Called from PROJECT_FILE.i:384. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:384. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:385. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:385. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:386. [value] Done for function __gmpz_clear @@ -353,123 +302,96 @@ PROJECT_FILE.i:153:[value] Function __gmpz_tdiv_q: precondition got status valid [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:390. [value] Done for function __gmpz_clear -PROJECT_FILE.i:394:[value] Assertion got status valid. +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:391. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:395:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_str <- main. - Called from PROJECT_FILE.i:402. + Called from PROJECT_FILE.i:403. PROJECT_FILE.i:86:[value] Function __gmpz_init_set_str: postcondition got status valid. [value] Done for function __gmpz_init_set_str [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:403. + Called from PROJECT_FILE.i:404. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:404. + Called from PROJECT_FILE.i:405. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:405. + Called from PROJECT_FILE.i:406. [value] Done for function __gmpz_init -PROJECT_FILE.i:406:[value] Assertion got status valid. +PROJECT_FILE.i:407:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:407. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:408. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_tdiv_q <- main. - Called from PROJECT_FILE.i:408. + Called from PROJECT_FILE.i:410. [value] Done for function __gmpz_tdiv_q [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:409. + Called from PROJECT_FILE.i:411. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:410. + Called from PROJECT_FILE.i:412. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:411. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:413. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:413. + Called from PROJECT_FILE.i:415. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:414. + Called from PROJECT_FILE.i:416. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:415. + Called from PROJECT_FILE.i:417. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:416. + Called from PROJECT_FILE.i:418. [value] Done for function __gmpz_clear -PROJECT_FILE.i:420:[value] Assertion got status valid. +PROJECT_FILE.i:422:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:430. + Called from PROJECT_FILE.i:432. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:431. + Called from PROJECT_FILE.i:433. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:432. + Called from PROJECT_FILE.i:434. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:433. + Called from PROJECT_FILE.i:435. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:434. + Called from PROJECT_FILE.i:436. [value] Done for function __gmpz_init -PROJECT_FILE.i:435:[value] Assertion got status valid. +PROJECT_FILE.i:437:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:436. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:438. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_tdiv_r <- main. - Called from PROJECT_FILE.i:437. + Called from PROJECT_FILE.i:439. PROJECT_FILE.i:157:[value] Function __gmpz_tdiv_r: precondition got status valid. PROJECT_FILE.i:158:[value] Function __gmpz_tdiv_r: precondition got status valid. PROJECT_FILE.i:159:[value] Function __gmpz_tdiv_r: precondition got status valid. [value] Done for function __gmpz_tdiv_r [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:438. + Called from PROJECT_FILE.i:440. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:439. + Called from PROJECT_FILE.i:441. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:440. + Called from PROJECT_FILE.i:442. [value] Done for function __gmpz_neg [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:441. + Called from PROJECT_FILE.i:443. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:442. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:444. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:443. -[value] Done for function __gmpz_clear -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:444. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:445. [value] Done for function __gmpz_clear @@ -482,76 +404,64 @@ PROJECT_FILE.i:159:[value] Function __gmpz_tdiv_r: precondition got status valid [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:448. [value] Done for function __gmpz_clear -PROJECT_FILE.i:452:[value] Assertion got status valid. +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:449. +[value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:450. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:454:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:464. + Called from PROJECT_FILE.i:466. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:465. + Called from PROJECT_FILE.i:467. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:466. + Called from PROJECT_FILE.i:468. [value] Done for function __gmpz_neg [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:467. + Called from PROJECT_FILE.i:469. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:468. + Called from PROJECT_FILE.i:470. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:469. + Called from PROJECT_FILE.i:471. [value] Done for function __gmpz_neg [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:470. + Called from PROJECT_FILE.i:472. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:471. + Called from PROJECT_FILE.i:473. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:472. + Called from PROJECT_FILE.i:474. [value] Done for function __gmpz_init -PROJECT_FILE.i:473:[value] Assertion got status valid. +PROJECT_FILE.i:475:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:474. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:476. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_tdiv_r <- main. - Called from PROJECT_FILE.i:475. + Called from PROJECT_FILE.i:477. [value] Done for function __gmpz_tdiv_r [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:476. + Called from PROJECT_FILE.i:478. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:477. + Called from PROJECT_FILE.i:479. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:478. + Called from PROJECT_FILE.i:480. [value] Done for function __gmpz_neg [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:479. + Called from PROJECT_FILE.i:481. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:480. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:482. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:481. -[value] Done for function __gmpz_clear -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:482. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:483. [value] Done for function __gmpz_clear @@ -570,64 +480,52 @@ PROJECT_FILE.i:473:[value] Assertion got status valid. [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:488. [value] Done for function __gmpz_clear -PROJECT_FILE.i:492:[value] Assertion got status valid. +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:489. +[value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:490. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:494:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:502. + Called from PROJECT_FILE.i:504. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:503. + Called from PROJECT_FILE.i:505. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:504. + Called from PROJECT_FILE.i:506. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:505. + Called from PROJECT_FILE.i:507. [value] Done for function __gmpz_neg [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:506. + Called from PROJECT_FILE.i:508. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:507. + Called from PROJECT_FILE.i:509. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:508. + Called from PROJECT_FILE.i:510. [value] Done for function __gmpz_init -PROJECT_FILE.i:509:[value] Assertion got status valid. +PROJECT_FILE.i:511:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:510. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:512. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_tdiv_r <- main. - Called from PROJECT_FILE.i:511. + Called from PROJECT_FILE.i:513. [value] Done for function __gmpz_tdiv_r [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:512. + Called from PROJECT_FILE.i:514. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:513. + Called from PROJECT_FILE.i:515. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:514. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:516. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:515. -[value] Done for function __gmpz_clear -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:516. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:517. [value] Done for function __gmpz_clear @@ -640,86 +538,80 @@ PROJECT_FILE.i:509:[value] Assertion got status valid. [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:520. [value] Done for function __gmpz_clear -PROJECT_FILE.i:524:[value] Assertion got status valid. +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:521. +[value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:522. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:526:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:540. + Called from PROJECT_FILE.i:542. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:541. + Called from PROJECT_FILE.i:543. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:542. + Called from PROJECT_FILE.i:544. [value] Done for function __gmpz_init [value] computing for function __gmpz_mul <- main. - Called from PROJECT_FILE.i:543. + Called from PROJECT_FILE.i:545. [value] Done for function __gmpz_mul [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:544. + Called from PROJECT_FILE.i:546. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:545. + Called from PROJECT_FILE.i:547. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:546. + Called from PROJECT_FILE.i:548. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:547. + Called from PROJECT_FILE.i:549. [value] Done for function __gmpz_add [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:548. + Called from PROJECT_FILE.i:550. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:549. + Called from PROJECT_FILE.i:551. [value] Done for function __gmpz_add [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:550. + Called from PROJECT_FILE.i:552. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:551. + Called from PROJECT_FILE.i:553. [value] Done for function __gmpz_init [value] computing for function __gmpz_sub <- main. - Called from PROJECT_FILE.i:552. + Called from PROJECT_FILE.i:554. [value] Done for function __gmpz_sub [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:553. + Called from PROJECT_FILE.i:555. [value] Done for function __gmpz_init [value] computing for function __gmpz_sub <- main. - Called from PROJECT_FILE.i:554. + Called from PROJECT_FILE.i:556. [value] Done for function __gmpz_sub [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:555. + Called from PROJECT_FILE.i:557. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:556. + Called from PROJECT_FILE.i:558. [value] Done for function __gmpz_add [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:557. + Called from PROJECT_FILE.i:559. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:558. + Called from PROJECT_FILE.i:560. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:559. + Called from PROJECT_FILE.i:561. [value] Done for function __gmpz_neg [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:560. + Called from PROJECT_FILE.i:562. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:561. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:563. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:563. -[value] Done for function __gmpz_clear -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:564. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:565. [value] Done for function __gmpz_clear @@ -753,11 +645,17 @@ PROJECT_FILE.i:524:[value] Assertion got status valid. [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:575. [value] Done for function __gmpz_clear -PROJECT_FILE.i:579:[value] Assertion got status valid. +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:576. +[value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:577. +[value] Done for function __gmpz_clear PROJECT_FILE.i:581:[value] Assertion got status valid. PROJECT_FILE.i:583:[value] Assertion got status valid. PROJECT_FILE.i:585:[value] Assertion got status valid. PROJECT_FILE.i:587:[value] Assertion got status valid. +PROJECT_FILE.i:589:[value] Assertion got status valid. [value] Recording results for main [value] done for function main [value] ====== VALUES COMPUTED ====== @@ -849,9 +747,10 @@ extern int __gmpz_com(__mpz_struct * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -879,7 +778,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_3),(long)x); __e_acsl_var_4 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_2), (__mpz_struct const *)(__e_acsl_var_3)); - e_acsl_assert(! (__e_acsl_var_4 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4 == 0,(char *)"Assertion", (char *)"(-3 == x)",12); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -899,7 +798,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_6)); __e_acsl_var_8 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_5), (__mpz_struct const *)(__e_acsl_var_7)); - e_acsl_assert(! (__e_acsl_var_8 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_8 == 0,(char *)"Assertion", (char *)"(x == -3)",13); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_6)); @@ -917,7 +816,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_9)); __e_acsl_var_11 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_9), (__mpz_struct const *)(__e_acsl_var_10)); - e_acsl_assert(! (__e_acsl_var_11 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_11 != 0,(char *)"Assertion", (char *)"(0 != ~0)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_9)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); @@ -943,7 +842,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_15)); __e_acsl_var_17 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_14), (__mpz_struct const *)(__e_acsl_var_16)); - e_acsl_assert(! (__e_acsl_var_17 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_17 == 0,(char *)"Assertion", (char *)"(x+1 == -2)",16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_12)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_13)); @@ -972,7 +871,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_21)); __e_acsl_var_23 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_20), (__mpz_struct const *)(__e_acsl_var_22)); - e_acsl_assert(! (__e_acsl_var_23 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_23 == 0,(char *)"Assertion", (char *)"(x-1 == -4)",17); __gmpz_clear((__mpz_struct *)(__e_acsl_var_18)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_19)); @@ -1001,7 +900,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_27)); __e_acsl_var_29 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_26), (__mpz_struct const *)(__e_acsl_var_28)); - e_acsl_assert(! (__e_acsl_var_29 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_29 == 0,(char *)"Assertion", (char *)"(x*3 == -9)",18); __gmpz_clear((__mpz_struct *)(__e_acsl_var_24)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_25)); @@ -1027,7 +926,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_32)); __gmpz_init((__mpz_struct *)(__e_acsl_var_34)); /*@ assert 3 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_33 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_33 == 0),(char *)"Assertion", (char *)"(3 == 0)",19); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_30), @@ -1038,7 +937,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_35)); __e_acsl_var_37 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_36)); - e_acsl_assert(! (__e_acsl_var_37 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_37 == 0,(char *)"Assertion", (char *)"(x/3 == -1)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_30)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_31)); @@ -1063,7 +962,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_39)); __gmpz_init((__mpz_struct *)(__e_acsl_var_41)); /*@ assert 0xfffffffffff ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_40 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_40 == 0),(char *)"Assertion", (char *)"(0xfffffffffff == 0)",20); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_41), (__mpz_struct const *)(__e_acsl_var_38), @@ -1071,7 +970,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_42),(long)1); __e_acsl_var_43 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_41), (__mpz_struct const *)(__e_acsl_var_42)); - e_acsl_assert(! (__e_acsl_var_43 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_43 == 0,(char *)"Assertion", (char *)"(0xfffffffffff/0xfffffffffff == 1)",20); __gmpz_clear((__mpz_struct *)(__e_acsl_var_38)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_39)); @@ -1096,7 +995,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_46)); __gmpz_init((__mpz_struct *)(__e_acsl_var_48)); /*@ assert 2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_47 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_47 == 0),(char *)"Assertion", (char *)"(2 == 0)",21); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_48), (__mpz_struct const *)(__e_acsl_var_44), @@ -1107,7 +1006,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_49)); __e_acsl_var_51 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_48), (__mpz_struct const *)(__e_acsl_var_50)); - e_acsl_assert(! (__e_acsl_var_51 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_51 == 0,(char *)"Assertion", (char *)"(x%2 == -1)",21); __gmpz_clear((__mpz_struct *)(__e_acsl_var_44)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_45)); @@ -1142,7 +1041,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_56)); __gmpz_init((__mpz_struct *)(__e_acsl_var_58)); /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_57 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_57 == 0),(char *)"Assertion", (char *)"(-2 == 0)",22); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_58), (__mpz_struct const *)(__e_acsl_var_53), @@ -1153,7 +1052,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_59)); __e_acsl_var_61 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_58), (__mpz_struct const *)(__e_acsl_var_60)); - e_acsl_assert(! (__e_acsl_var_61 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_61 == 0,(char *)"Assertion", (char *)"(-3%-2 == -1)",22); __gmpz_clear((__mpz_struct *)(__e_acsl_var_52)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_53)); @@ -1185,7 +1084,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_65)); __gmpz_init((__mpz_struct *)(__e_acsl_var_67)); /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_66 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_66 == 0),(char *)"Assertion", (char *)"(-2 == 0)",23); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_67), (__mpz_struct const *)(__e_acsl_var_62), @@ -1193,7 +1092,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_68),(long)1); __e_acsl_var_69 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_67), (__mpz_struct const *)(__e_acsl_var_68)); - e_acsl_assert(! (__e_acsl_var_69 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_69 == 0,(char *)"Assertion", (char *)"(3%-2 == 1)",23); __gmpz_clear((__mpz_struct *)(__e_acsl_var_62)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_63)); @@ -1254,7 +1153,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_81)); __e_acsl_var_83 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_80), (__mpz_struct const *)(__e_acsl_var_82)); - e_acsl_assert(! (__e_acsl_var_83 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_83 == 0,(char *)"Assertion", (char *)"(((x*2+(3+y))-4)+(x-y) == -10)",25); __gmpz_clear((__mpz_struct *)(__e_acsl_var_70)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_71)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.res.oracle index 4487bf92d3adffd0e14d213f592e1c25c2e9ece5..b9c4db579284e4a2867be203fe803da6a57cb4f4 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.res.oracle @@ -2,104 +2,105 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:236:[value] Assertion got status valid. +PROJECT_FILE.i:237:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:237. + Called from PROJECT_FILE.i:238. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:239:[value] Assertion got status valid. +PROJECT_FILE.i:240:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:240. + Called from PROJECT_FILE.i:241. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:242:[value] Assertion got status valid. +PROJECT_FILE.i:243:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:243. + Called from PROJECT_FILE.i:244. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:245:[value] Assertion got status valid. +PROJECT_FILE.i:246:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:249:[value] Assertion got status valid. +PROJECT_FILE.i:250:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:253:[value] Assertion got status valid. +PROJECT_FILE.i:254:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:257:[value] Assertion got status valid. -PROJECT_FILE.i:260:[value] Assertion got status valid. +PROJECT_FILE.i:258:[value] Assertion got status valid. +PROJECT_FILE.i:261:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:263. + Called from PROJECT_FILE.i:264. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:267:[value] Assertion got status valid. -PROJECT_FILE.i:270:[value] Assertion got status valid. +PROJECT_FILE.i:268:[value] Assertion got status valid. +PROJECT_FILE.i:271:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:271. + Called from PROJECT_FILE.i:272. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:273. -[value] Recording results for e_acsl_assert -[value] Done for function e_acsl_assert -PROJECT_FILE.i:278:[value] Assertion got status valid. -PROJECT_FILE.i:281:[value] Assertion got status valid. -[value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:282. + Called from PROJECT_FILE.i:275. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert +PROJECT_FILE.i:280:[value] Assertion got status valid. +PROJECT_FILE.i:283:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. Called from PROJECT_FILE.i:284. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:288:[value] Assertion got status valid. -PROJECT_FILE.i:291:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:292. + Called from PROJECT_FILE.i:286. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert +PROJECT_FILE.i:290:[value] Assertion got status valid. +PROJECT_FILE.i:293:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. Called from PROJECT_FILE.i:294. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:298:[value] Assertion got status valid. -PROJECT_FILE.i:301:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:302. + Called from PROJECT_FILE.i:296. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert +PROJECT_FILE.i:300:[value] Assertion got status valid. +PROJECT_FILE.i:303:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. Called from PROJECT_FILE.i:304. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:308:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:309. + Called from PROJECT_FILE.i:306. +[value] Recording results for e_acsl_assert +[value] Done for function e_acsl_assert +PROJECT_FILE.i:310:[value] Assertion got status valid. +[value] computing for function e_acsl_assert <- main. + Called from PROJECT_FILE.i:311. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:313:[value] Assertion got status valid. +PROJECT_FILE.i:315:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:314. + Called from PROJECT_FILE.i:316. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:317:[value] Assertion got status valid. +PROJECT_FILE.i:318:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:318. + Called from PROJECT_FILE.i:319. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:320:[value] Assertion got status valid. +PROJECT_FILE.i:321:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:321. + Called from PROJECT_FILE.i:322. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert PROJECT_FILE.i:324:[value] Assertion got status valid. @@ -107,9 +108,9 @@ PROJECT_FILE.i:324:[value] Assertion got status valid. Called from PROJECT_FILE.i:325. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:328:[value] Assertion got status valid. +PROJECT_FILE.i:327:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:329. + Called from PROJECT_FILE.i:328. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -127,9 +128,10 @@ PROJECT_FILE.i:328:[value] Assertion got status valid. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -145,27 +147,27 @@ int main(void) x = -3; y = 2; /*@ assert -3 ≡ x; */ ; - e_acsl_assert(! (-3 == x),(char *)"Assertion",(char *)"(-3 == x)",12); + e_acsl_assert(-3 == x,(char *)"Assertion",(char *)"(-3 == x)",12); /*@ assert x ≡ -3; */ ; - e_acsl_assert(! (x == -3),(char *)"Assertion",(char *)"(x == -3)",13); + e_acsl_assert(x == -3,(char *)"Assertion",(char *)"(x == -3)",13); /*@ assert 0 ≢ ~0; */ ; - e_acsl_assert(! (0 != ~ 0),(char *)"Assertion",(char *)"(0 != ~0)",14); + e_acsl_assert(0 != ~ 0,(char *)"Assertion",(char *)"(0 != ~0)",14); /*@ assert x+1 ≡ -2; */ ; - e_acsl_assert(! ((long long)x + (long long)1 == (long long)(-2)), + e_acsl_assert((long long)x + (long long)1 == (long long)(-2), (char *)"Assertion",(char *)"(x+1 == -2)",16); /*@ assert x-1 ≡ -4; */ ; - e_acsl_assert(! ((long long)x - (long long)1 == (long long)(-4)), + e_acsl_assert((long long)x - (long long)1 == (long long)(-4), (char *)"Assertion",(char *)"(x-1 == -4)",17); /*@ assert x*3 ≡ -9; */ ; - e_acsl_assert(! ((long long)x * (long long)3 == (long long)(-9)), + e_acsl_assert((long long)x * (long long)3 == (long long)(-9), (char *)"Assertion",(char *)"(x*3 == -9)",18); /*@ assert x/3 ≡ -1; */ ; { int __e_acsl_var; /*@ assert 3 ≢ 0; */ ; - e_acsl_assert(3 == 0,(char *)"Assertion",(char *)"(3 == 0)",19); + e_acsl_assert(! (3 == 0),(char *)"Assertion",(char *)"(3 == 0)",19); __e_acsl_var = x / 3; - e_acsl_assert(! (__e_acsl_var == -1),(char *)"Assertion", + e_acsl_assert(__e_acsl_var == -1,(char *)"Assertion", (char *)"(x/3 == -1)",19); } @@ -173,10 +175,10 @@ int main(void) { int __e_acsl_var_2; /*@ assert 0xfffffffffff ≢ 0; */ ; - e_acsl_assert(0xfffffffffff == (long long)0,(char *)"Assertion", + e_acsl_assert(! (0xfffffffffff == (long long)0),(char *)"Assertion", (char *)"(0xfffffffffff == 0)",20); __e_acsl_var_2 = (int)(0xfffffffffff / 0xfffffffffff); - e_acsl_assert(! (__e_acsl_var_2 == 1),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_2 == 1,(char *)"Assertion", (char *)"(0xfffffffffff/0xfffffffffff == 1)",20); } @@ -184,9 +186,9 @@ int main(void) { int __e_acsl_var_3; /*@ assert 2 ≢ 0; */ ; - e_acsl_assert(2 == 0,(char *)"Assertion",(char *)"(2 == 0)",21); + e_acsl_assert(! (2 == 0),(char *)"Assertion",(char *)"(2 == 0)",21); __e_acsl_var_3 = x % 2; - e_acsl_assert(! (__e_acsl_var_3 == -1),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_3 == -1,(char *)"Assertion", (char *)"(x%2 == -1)",21); } @@ -194,9 +196,9 @@ int main(void) { int __e_acsl_var_4; /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(-2 == 0,(char *)"Assertion",(char *)"(-2 == 0)",22); + e_acsl_assert(! (-2 == 0),(char *)"Assertion",(char *)"(-2 == 0)",22); __e_acsl_var_4 = -3 % -2; - e_acsl_assert(! (__e_acsl_var_4 == -1),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4 == -1,(char *)"Assertion", (char *)"(-3%-2 == -1)",22); } @@ -204,31 +206,31 @@ int main(void) { int __e_acsl_var_5; /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(-2 == 0,(char *)"Assertion",(char *)"(-2 == 0)",23); + e_acsl_assert(! (-2 == 0),(char *)"Assertion",(char *)"(-2 == 0)",23); __e_acsl_var_5 = 3 % -2; - e_acsl_assert(! (__e_acsl_var_5 == 1),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_5 == 1,(char *)"Assertion", (char *)"(3%-2 == 1)",23); } /*@ assert ((x*2+(3+y))-4)+(x-y) ≡ -10; */ ; - e_acsl_assert(! ((((long long)x * (long long)2 + ((long long)3 + (long long)y)) - (long long)4) + ( - (long long)x - (long long)y) == (long long)(-10)), + e_acsl_assert((((long long)x * (long long)2 + ((long long)3 + (long long)y)) - (long long)4) + ( + (long long)x - (long long)y) == (long long)(-10), (char *)"Assertion",(char *)"(((x*2+(3+y))-4)+(x-y) == -10)", 25); /*@ assert (0≡1) ≡ !(0≡0); */ ; - e_acsl_assert(! ((0 == 1) == ! (0 == 0)),(char *)"Assertion", + e_acsl_assert((0 == 1) == ! (0 == 0),(char *)"Assertion", (char *)"((0==1) == !(0==0))",27); /*@ assert (0≤-1) ≡ (0>0); */ ; - e_acsl_assert(! ((0 <= -1) == (0 > 0)),(char *)"Assertion", + e_acsl_assert((0 <= -1) == (0 > 0),(char *)"Assertion", (char *)"((0<=-1) == (0>0))",28); /*@ assert (0≥-1) ≡ (0≤0); */ ; - e_acsl_assert(! ((0 >= -1) == (0 <= 0)),(char *)"Assertion", + e_acsl_assert((0 >= -1) == (0 <= 0),(char *)"Assertion", (char *)"((0>=-1) == (0<=0))",29); /*@ assert (0≢1) ≡ !(0≢0); */ ; - e_acsl_assert(! ((0 != 1) == ! (0 != 0)),(char *)"Assertion", + e_acsl_assert((0 != 1) == ! (0 != 0),(char *)"Assertion", (char *)"((0!=1) == !(0!=0))",30); /*@ assert (0≢0) ≡ !(1≢0); */ ; - e_acsl_assert(! ((0 != 0) == ! (1 != 0)),(char *)"Assertion", + e_acsl_assert((0 != 0) == ! (1 != 0),(char *)"Assertion", (char *)"((0!=0) == !(1!=0))",32); __retres = 0; return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.1.res.oracle index 2142552d69cdae3d6cbc95fa834a4e0727e62c82..3855b32cbe311264bf5baa8a847a2189e7ffd42a 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.1.res.oracle @@ -8,65 +8,53 @@ tests/e-acsl-runtime/array.i:15:[e-acsl] warning: missing guard for ensuring tha [value] Values of globals at initialization T1[0..2] ∈ {0} T2[0..3] ∈ {0} -PROJECT_FILE.i:236:[value] entering loop for the first time -PROJECT_FILE.i:240:[value] assigning non deterministic value for the first time -PROJECT_FILE.i:245:[value] entering loop for the first time -PROJECT_FILE.i:252:[value] Assertion got status unknown. +PROJECT_FILE.i:237:[value] entering loop for the first time +PROJECT_FILE.i:241:[value] assigning non deterministic value for the first time +PROJECT_FILE.i:246:[value] entering loop for the first time +PROJECT_FILE.i:253:[value] Assertion got status unknown. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:258. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:258. + Called from PROJECT_FILE.i:259. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:259. + Called from PROJECT_FILE.i:260. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:260. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:261. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:261. + Called from PROJECT_FILE.i:262. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. + Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear -PROJECT_FILE.i:266:[value] Assertion got status unknown. +PROJECT_FILE.i:267:[value] Assertion got status unknown. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:271. + Called from PROJECT_FILE.i:272. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:272. + Called from PROJECT_FILE.i:273. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:274. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:275. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:276. + Called from PROJECT_FILE.i:277. [value] Done for function __gmpz_clear [value] Recording results for main [value] done for function main @@ -104,9 +92,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -144,7 +133,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)T2[0]); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion", (char *)"(T1[0] == T2[0])",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -159,7 +148,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)T2[1]); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_6 != 0,(char *)"Assertion", (char *)"(T1[1] != T2[1])",15); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.res.oracle index 32f4b390a89ea7e61e3dd1a5e36b5db83cba471d..69e6c62edf44f23c2da0c9d0eb4b8d51bd607a9f 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.res.oracle @@ -8,30 +8,18 @@ tests/e-acsl-runtime/array.i:15:[e-acsl] warning: missing guard for ensuring tha [value] Values of globals at initialization T1[0..2] ∈ {0} T2[0..3] ∈ {0} -PROJECT_FILE.i:236:[value] entering loop for the first time -PROJECT_FILE.i:240:[value] assigning non deterministic value for the first time -PROJECT_FILE.i:245:[value] entering loop for the first time -PROJECT_FILE.i:252:[value] Assertion got status unknown. +PROJECT_FILE.i:237:[value] entering loop for the first time +PROJECT_FILE.i:241:[value] assigning non deterministic value for the first time +PROJECT_FILE.i:246:[value] entering loop for the first time +PROJECT_FILE.i:253:[value] Assertion got status unknown. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:253. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:254. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:255:[value] Assertion got status unknown. +PROJECT_FILE.i:256:[value] Assertion got status unknown. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:256. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:257. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -51,9 +39,10 @@ PROJECT_FILE.i:255:[value] Assertion got status unknown. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -83,10 +72,10 @@ int main(void) } /*@ assert T1[0] ≡ T2[0]; */ ; - e_acsl_assert(! (T1[0] == T2[0]),(char *)"Assertion", + e_acsl_assert(T1[0] == T2[0],(char *)"Assertion", (char *)"(T1[0] == T2[0])",14); /*@ assert T1[1] ≢ T2[1]; */ ; - e_acsl_assert(! (T1[1] != T2[1]),(char *)"Assertion", + e_acsl_assert(T1[1] != T2[1],(char *)"Assertion", (char *)"(T1[1] != T2[1])",15); __retres = 0; return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.1.res.oracle index 0fea43ef51bc534d1f6ba80e9c7d90d53cd6db7a..d67cbdffc07326ff667193b84d396b0fcb7136d5 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.1.res.oracle @@ -10,86 +10,74 @@ tests/e-acsl-runtime/at.i:34:[e-acsl] warning: missing guard for ensuring that p [value] Values of globals at initialization A ∈ {0} [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:392. + Called from PROJECT_FILE.i:391. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:393. + Called from PROJECT_FILE.i:392. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:394. + Called from PROJECT_FILE.i:393. PROJECT_FILE.i:69:[value] Function __gmpz_init: postcondition got status valid. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:395. + Called from PROJECT_FILE.i:394. PROJECT_FILE.i:133:[value] Function __gmpz_add: precondition got status valid. PROJECT_FILE.i:134:[value] Function __gmpz_add: precondition got status valid. PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid. [value] Done for function __gmpz_add [value] computing for function __gmpz_init_set <- main. - Called from PROJECT_FILE.i:396. + Called from PROJECT_FILE.i:395. PROJECT_FILE.i:73:[value] Function __gmpz_init_set: precondition got status valid. PROJECT_FILE.i:74:[value] Function __gmpz_init_set: postcondition got status valid. [value] Done for function __gmpz_init_set [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:397. + Called from PROJECT_FILE.i:396. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:398. + Called from PROJECT_FILE.i:397. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:399. + Called from PROJECT_FILE.i:398. [value] Done for function __gmpz_clear -PROJECT_FILE.i:403:[value] Assertion got status valid. +PROJECT_FILE.i:402:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:408. + Called from PROJECT_FILE.i:407. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:409. + Called from PROJECT_FILE.i:408. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:410. + Called from PROJECT_FILE.i:409. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:411. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:410. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:412. + Called from PROJECT_FILE.i:411. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:413. + Called from PROJECT_FILE.i:412. [value] Done for function __gmpz_clear [value] computing for function f <- main. - Called from PROJECT_FILE.i:419. -PROJECT_FILE.i:246:[value] Assertion got status valid. + Called from PROJECT_FILE.i:418. +PROJECT_FILE.i:247:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- f <- main. - Called from PROJECT_FILE.i:251. + Called from PROJECT_FILE.i:252. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- f <- main. - Called from PROJECT_FILE.i:252. + Called from PROJECT_FILE.i:253. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- f <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:254. -[value] computing for function printf <- e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:255. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- f <- main. @@ -110,12 +98,6 @@ PROJECT_FILE.i:261:[value] Assertion got status unknown. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- f <- main. Called from PROJECT_FILE.i:269. -[value] computing for function printf <- e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- f <- main. @@ -136,213 +118,165 @@ PROJECT_FILE.i:275:[value] Assertion got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- f <- main. Called from PROJECT_FILE.i:284. -[value] computing for function printf <- e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- f <- main. - Called from PROJECT_FILE.i:286. + Called from PROJECT_FILE.i:285. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- f <- main. - Called from PROJECT_FILE.i:287. + Called from PROJECT_FILE.i:286. [value] Done for function __gmpz_clear -PROJECT_FILE.i:291:[value] Assertion got status unknown. +PROJECT_FILE.i:290:[value] Assertion got status unknown. [value] computing for function __gmpz_init_set_si <- f <- main. - Called from PROJECT_FILE.i:296. + Called from PROJECT_FILE.i:295. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- f <- main. - Called from PROJECT_FILE.i:297. + Called from PROJECT_FILE.i:296. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- f <- main. - Called from PROJECT_FILE.i:298. + Called from PROJECT_FILE.i:297. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:299. -[value] computing for function printf <- e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:298. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- f <- main. - Called from PROJECT_FILE.i:301. + Called from PROJECT_FILE.i:300. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- f <- main. - Called from PROJECT_FILE.i:302. + Called from PROJECT_FILE.i:301. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- f <- main. - Called from PROJECT_FILE.i:312. + Called from PROJECT_FILE.i:311. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- f <- main. - Called from PROJECT_FILE.i:313. + Called from PROJECT_FILE.i:312. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- f <- main. - Called from PROJECT_FILE.i:314. + Called from PROJECT_FILE.i:313. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:315. -[value] computing for function printf <- e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:314. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- f <- main. - Called from PROJECT_FILE.i:317. + Called from PROJECT_FILE.i:316. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- f <- main. - Called from PROJECT_FILE.i:318. + Called from PROJECT_FILE.i:317. [value] Done for function __gmpz_clear -PROJECT_FILE.i:230:[value] Function f: postcondition got status valid. +PROJECT_FILE.i:231:[value] Function f: postcondition got status valid. [value] Recording results for f [value] Done for function f -PROJECT_FILE.i:420:[value] Assertion got status unknown. +PROJECT_FILE.i:419:[value] Assertion got status unknown. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:425. + Called from PROJECT_FILE.i:424. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:426. + Called from PROJECT_FILE.i:425. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:427. + Called from PROJECT_FILE.i:426. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:428. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:427. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:429. + Called from PROJECT_FILE.i:428. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:430. + Called from PROJECT_FILE.i:429. [value] Done for function __gmpz_clear -PROJECT_FILE.i:434:[value] Assertion got status unknown. +PROJECT_FILE.i:433:[value] Assertion got status unknown. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:438. + Called from PROJECT_FILE.i:437. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:439. + Called from PROJECT_FILE.i:438. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:440. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:439. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:442. + Called from PROJECT_FILE.i:440. [value] Done for function __gmpz_clear -PROJECT_FILE.i:446:[value] Assertion got status unknown. +PROJECT_FILE.i:444:[value] Assertion got status unknown. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:452. + Called from PROJECT_FILE.i:450. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:453. + Called from PROJECT_FILE.i:451. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:454. + Called from PROJECT_FILE.i:452. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:455. + Called from PROJECT_FILE.i:453. [value] Done for function __gmpz_add [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:456. + Called from PROJECT_FILE.i:454. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:457. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:455. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:459. + Called from PROJECT_FILE.i:456. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:460. + Called from PROJECT_FILE.i:457. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:461. + Called from PROJECT_FILE.i:458. [value] Done for function __gmpz_clear [value] computing for function g <- main. - Called from PROJECT_FILE.i:465. -PROJECT_FILE.i:342:[value] Assertion got status unknown. + Called from PROJECT_FILE.i:462. +PROJECT_FILE.i:341:[value] Assertion got status unknown. [value] computing for function __gmpz_init_set_si <- g <- main. - Called from PROJECT_FILE.i:347. + Called from PROJECT_FILE.i:346. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- g <- main. - Called from PROJECT_FILE.i:348. + Called from PROJECT_FILE.i:347. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- g <- main. - Called from PROJECT_FILE.i:349. + Called from PROJECT_FILE.i:348. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:350. -[value] computing for function printf <- e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:349. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- g <- main. - Called from PROJECT_FILE.i:352. + Called from PROJECT_FILE.i:351. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- g <- main. - Called from PROJECT_FILE.i:353. + Called from PROJECT_FILE.i:352. [value] Done for function __gmpz_clear -PROJECT_FILE.i:358:[value] Assertion got status unknown. +PROJECT_FILE.i:357:[value] Assertion got status unknown. [value] computing for function __gmpz_init_set_si <- g <- main. - Called from PROJECT_FILE.i:364. + Called from PROJECT_FILE.i:363. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- g <- main. - Called from PROJECT_FILE.i:365. + Called from PROJECT_FILE.i:364. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- g <- main. - Called from PROJECT_FILE.i:366. + Called from PROJECT_FILE.i:365. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:367. -[value] computing for function printf <- e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:366. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- g <- main. - Called from PROJECT_FILE.i:369. + Called from PROJECT_FILE.i:368. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- g <- main. - Called from PROJECT_FILE.i:370. + Called from PROJECT_FILE.i:369. [value] Done for function __gmpz_clear [value] Recording results for g [value] Done for function g [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:467. + Called from PROJECT_FILE.i:464. [value] Done for function __gmpz_clear [value] Recording results for main [value] done for function main @@ -416,9 +350,10 @@ extern void __gmpz_add(__mpz_struct * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -451,7 +386,7 @@ void f(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_3),(long)0); __e_acsl_var_4 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_2), (__mpz_struct const *)(__e_acsl_var_3)); - e_acsl_assert(! (__e_acsl_var_4 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4 == 0,(char *)"Assertion", (char *)"(\\at(A,Pre) == 0)",13); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_3)); @@ -466,7 +401,7 @@ void f(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_7),(long)1); __e_acsl_var_8 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_6), (__mpz_struct const *)(__e_acsl_var_7)); - e_acsl_assert(! (__e_acsl_var_8 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_8 == 0,(char *)"Assertion", (char *)"(\\at(A,F) == 1)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_6)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_7)); @@ -483,7 +418,7 @@ void f(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_11),(long)2); __e_acsl_var_12 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_10), (__mpz_struct const *)(__e_acsl_var_11)); - e_acsl_assert(! (__e_acsl_var_12 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_12 == 0,(char *)"Assertion", (char *)"(\\at(A,Here) == 2)",15); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_11)); @@ -499,7 +434,7 @@ void f(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_16),(long)0); __e_acsl_var_17 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_15), (__mpz_struct const *)(__e_acsl_var_16)); - e_acsl_assert(! (__e_acsl_var_17 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_17 == 0,(char *)"Assertion", (char *)"(\\at(\\at(A,Pre),F) == 0)",16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_15)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_16)); @@ -516,7 +451,7 @@ void f(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_20),(long)3); __e_acsl_var_21 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_19), (__mpz_struct const *)(__e_acsl_var_20)); - e_acsl_assert(! (__e_acsl_var_21 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_21 == 0,(char *)"Postcondition", (char *)"(\\at(A,Post) == 3)",9); __gmpz_clear((__mpz_struct *)(__e_acsl_var_19)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_20)); @@ -550,7 +485,7 @@ void g(int *p, int *q) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_4),(long)2); __e_acsl_var_5 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_3), (__mpz_struct const *)(__e_acsl_var_4)); - e_acsl_assert(! (__e_acsl_var_5 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_5 == 0,(char *)"Assertion", (char *)"(\\at(*(p+\\at(*q,L1)),L2) == 2)",32); __gmpz_clear((__mpz_struct *)(__e_acsl_var_3)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); @@ -567,7 +502,7 @@ void g(int *p, int *q) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_9),(long)2); __e_acsl_var_10 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_8), (__mpz_struct const *)(__e_acsl_var_9)); - e_acsl_assert(! (__e_acsl_var_10 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_10 == 0,(char *)"Assertion", (char *)"(\\at(*(p+\\at(*q,L1)),Here) == 2)",34); __gmpz_clear((__mpz_struct *)(__e_acsl_var_8)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_9)); @@ -613,8 +548,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)0); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", - (char *)"(x == 0)",45); + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion",(char *)"(x == 0)", + 45); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); } @@ -631,7 +566,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_6),(long)0); __e_acsl_var_7 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_5), (__mpz_struct const *)(__e_acsl_var_6)); - e_acsl_assert(! (__e_acsl_var_7 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_7 == 0,(char *)"Assertion", (char *)"(\\at(x,L) == 0)",50); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_6)); @@ -644,7 +579,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_12),(long)1); __e_acsl_var_13 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_11), (__mpz_struct const *)(__e_acsl_var_12)); - e_acsl_assert(! (__e_acsl_var_13 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_13 == 0,(char *)"Assertion", (char *)"(\\at(x+1,L) == 1)",51); __gmpz_clear((__mpz_struct *)(__e_acsl_var_12)); } @@ -664,7 +599,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_16)); __e_acsl_var_18 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_17), (__mpz_struct const *)(__e_acsl_var_16)); - e_acsl_assert(! (__e_acsl_var_18 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_18 == 0,(char *)"Assertion", (char *)"(\\at(x,L)+1 == 1)",52); __gmpz_clear((__mpz_struct *)(__e_acsl_var_15)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_16)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.res.oracle index 27c829f6fdcfab3c9b1641146e855bda0bd8f74d..705b5d784662c136d9a780be146c2a6149285f47 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.res.oracle @@ -12,35 +12,36 @@ tests/e-acsl-runtime/at.i:34:[e-acsl] warning: missing guard for ensuring that p PROJECT_FILE.i:311:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. Called from PROJECT_FILE.i:312. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function f <- main. Called from PROJECT_FILE.i:316. -PROJECT_FILE.i:246:[value] Assertion got status valid. +PROJECT_FILE.i:247:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:249:[value] Assertion got status unknown. +PROJECT_FILE.i:250:[value] Assertion got status unknown. [value] computing for function e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:250. + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:252:[value] Assertion got status valid. +PROJECT_FILE.i:253:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:256:[value] Assertion got status unknown. +PROJECT_FILE.i:257:[value] Assertion got status unknown. [value] computing for function e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:258. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:262. + Called from PROJECT_FILE.i:263. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:230:[value] Function f: postcondition got status valid. +PROJECT_FILE.i:231:[value] Function f: postcondition got status valid. [value] Recording results for f [value] Done for function f PROJECT_FILE.i:317:[value] Assertion got status unknown. @@ -109,9 +110,10 @@ PROJECT_FILE.i:290:[value] Assertion got status unknown. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -136,21 +138,21 @@ void f(void) __e_acsl_var_2 = A; A = 2; /*@ assert \at(A,Pre) ≡ 0; */ ; - e_acsl_assert(! (__e_acsl_var == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var == 0,(char *)"Assertion", (char *)"(\\at(A,Pre) == 0)",13); /*@ assert \at(A,F) ≡ 1; */ ; - e_acsl_assert(! (__e_acsl_var_2 == 1),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_2 == 1,(char *)"Assertion", (char *)"(\\at(A,F) == 1)",14); /*@ assert \at(A,Here) ≡ 2; */ ; __e_acsl_var_3 = A; - e_acsl_assert(! (__e_acsl_var_3 == 2),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_3 == 2,(char *)"Assertion", (char *)"(\\at(A,Here) == 2)",15); /*@ assert \at(\at(A,Pre),F) ≡ 0; */ ; - e_acsl_assert(! (__e_acsl_var_5 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_5 == 0,(char *)"Assertion", (char *)"(\\at(\\at(A,Pre),F) == 0)",16); A = 3; __e_acsl_var_6 = A; - e_acsl_assert(! (__e_acsl_var_6 == 3),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_6 == 3,(char *)"Postcondition", (char *)"(\\at(A,Post) == 3)",9); return; } @@ -172,12 +174,12 @@ void g(int *p, int *q) L2: __e_acsl_var_2 = *(p + __e_acsl_var); A = 4; /*@ assert \at(*(p+\at(*q,L1)),L2) ≡ 2; */ ; - e_acsl_assert(! (__e_acsl_var_2 == 2),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_2 == 2,(char *)"Assertion", (char *)"(\\at(*(p+\\at(*q,L1)),L2) == 2)",32); L3: /*@ assert \at(*(p+\at(*q,L1)),Here) ≡ 2; */ ; __e_acsl_var_4 = *(p + __e_acsl_var_3); - e_acsl_assert(! (__e_acsl_var_4 == 2),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4 == 2,(char *)"Assertion", (char *)"(\\at(*(p+\\at(*q,L1)),Here) == 2)",34); return; } @@ -195,18 +197,18 @@ int main(void) __e_acsl_var_2 = (long long)x + (long long)1; __e_acsl_var = x; /*@ assert x ≡ 0; */ ; - e_acsl_assert(! (x == 0),(char *)"Assertion",(char *)"(x == 0)",45); + e_acsl_assert(x == 0,(char *)"Assertion",(char *)"(x == 0)",45); x = 1; x = 2; f(); /*@ assert \at(x,L) ≡ 0; */ ; - e_acsl_assert(! (__e_acsl_var == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var == 0,(char *)"Assertion", (char *)"(\\at(x,L) == 0)",50); /*@ assert \at(x+1,L) ≡ 1; */ ; - e_acsl_assert(! (__e_acsl_var_2 == (long long)1),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_2 == (long long)1,(char *)"Assertion", (char *)"(\\at(x+1,L) == 1)",51); /*@ assert \at(x,L)+1 ≡ 1; */ ; - e_acsl_assert(! ((long long)__e_acsl_var_3 + (long long)1 == (long long)1), + e_acsl_assert((long long)__e_acsl_var_3 + (long long)1 == (long long)1, (char *)"Assertion",(char *)"(\\at(x,L)+1 == 1)",52); g(t,& x); __retres = 0; diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.1.res.oracle index 4f3e1c0f07a8a5e8d7e4bd9dc388eecf5e85a930..587197650a17deb796367c0479b04ffc0a6e4509 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.1.res.oracle @@ -4,188 +4,152 @@ tests/e-acsl-runtime/cast.i:19:[e-acsl] warning: missing guard for ensuring that [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:236:[value] Assertion got status valid. +PROJECT_FILE.i:237:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:241. + Called from PROJECT_FILE.i:242. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:242. + Called from PROJECT_FILE.i:243. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:243. + Called from PROJECT_FILE.i:244. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:245. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:245. + Called from PROJECT_FILE.i:246. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_clear -PROJECT_FILE.i:250:[value] Assertion got status valid. +PROJECT_FILE.i:251:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:256. + Called from PROJECT_FILE.i:257. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:258. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:259. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:259. + Called from PROJECT_FILE.i:260. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:260. + Called from PROJECT_FILE.i:261. [value] Done for function __gmpz_clear -PROJECT_FILE.i:264:[value] Assertion got status valid. +PROJECT_FILE.i:265:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:269. + Called from PROJECT_FILE.i:270. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:270. + Called from PROJECT_FILE.i:271. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:271. + Called from PROJECT_FILE.i:272. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:272. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:273. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_clear -PROJECT_FILE.i:278:[value] Assertion got status valid. +PROJECT_FILE.i:279:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_ui <- main. - Called from PROJECT_FILE.i:283. + Called from PROJECT_FILE.i:284. PROJECT_FILE.i:78:[value] Function __gmpz_init_set_ui: postcondition got status valid. [value] Done for function __gmpz_init_set_ui [value] computing for function __gmpz_init_set_ui <- main. - Called from PROJECT_FILE.i:284. + Called from PROJECT_FILE.i:285. [value] Done for function __gmpz_init_set_ui [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:285. + Called from PROJECT_FILE.i:286. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:286. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:287. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:288. + Called from PROJECT_FILE.i:289. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:289. + Called from PROJECT_FILE.i:290. [value] Done for function __gmpz_clear -PROJECT_FILE.i:293:[value] Assertion got status valid. +PROJECT_FILE.i:294:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:300. + Called from PROJECT_FILE.i:301. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_str <- main. - Called from PROJECT_FILE.i:301. + Called from PROJECT_FILE.i:302. PROJECT_FILE.i:86:[value] Function __gmpz_init_set_str: postcondition got status valid. [value] Done for function __gmpz_init_set_str [value] computing for function __gmpz_get_ui <- main. - Called from PROJECT_FILE.i:302. + Called from PROJECT_FILE.i:303. PROJECT_FILE.i:180:[value] Function __gmpz_get_ui: precondition got status valid. [value] Done for function __gmpz_get_ui [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:303. + Called from PROJECT_FILE.i:304. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:304. + Called from PROJECT_FILE.i:305. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:305. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:306. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:307. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:308. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:309. [value] Done for function __gmpz_clear -PROJECT_FILE.i:313:[value] Assertion got status valid. +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:310. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:314:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_ui <- main. - Called from PROJECT_FILE.i:320. + Called from PROJECT_FILE.i:321. [value] Done for function __gmpz_init_set_ui [value] computing for function __gmpz_init_set_str <- main. - Called from PROJECT_FILE.i:321. + Called from PROJECT_FILE.i:322. [value] Done for function __gmpz_init_set_str [value] computing for function __gmpz_get_ui <- main. - Called from PROJECT_FILE.i:322. + Called from PROJECT_FILE.i:323. [value] Done for function __gmpz_get_ui [value] computing for function __gmpz_init_set_ui <- main. - Called from PROJECT_FILE.i:323. + Called from PROJECT_FILE.i:324. [value] Done for function __gmpz_init_set_ui [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:324. + Called from PROJECT_FILE.i:325. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:325. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:326. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:327. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:328. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:329. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:330. +[value] Done for function __gmpz_clear [value] Recording results for main [value] done for function main [value] ====== VALUES COMPUTED ====== @@ -231,9 +195,10 @@ extern unsigned long __gmpz_get_ui(__mpz_struct const * /*[1]*/ z); extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -257,7 +222,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)y); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion", (char *)"((int)x == y)",11); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -272,7 +237,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)y); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_6 == 0,(char *)"Assertion", (char *)"(x == (long)y)",12); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); @@ -287,7 +252,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_8),(long)0); __e_acsl_var_9 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_7), (__mpz_struct const *)(__e_acsl_var_8)); - e_acsl_assert(! (__e_acsl_var_9 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_9 == 0,(char *)"Assertion", (char *)"(y == (int)0)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_7)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_8)); @@ -304,7 +269,7 @@ int main(void) (unsigned long)((unsigned int)0)); __e_acsl_var_12 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_10), (__mpz_struct const *)(__e_acsl_var_11)); - e_acsl_assert(! (__e_acsl_var_12 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_12 == 0,(char *)"Assertion", (char *)"((unsigned int)y == (unsigned int)0)",15); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_11)); @@ -325,7 +290,7 @@ int main(void) (long)((int)__e_acsl_var_15)); __e_acsl_var_17 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_13), (__mpz_struct const *)(__e_acsl_var_16)); - e_acsl_assert(! (__e_acsl_var_17 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_17 != 0,(char *)"Assertion", (char *)"(y != (int)0xfffffffffffffff)",18); __gmpz_clear((__mpz_struct *)(__e_acsl_var_13)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_14)); @@ -348,7 +313,7 @@ int main(void) (unsigned long)((unsigned int)__e_acsl_var_20)); __e_acsl_var_22 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_18), (__mpz_struct const *)(__e_acsl_var_21)); - e_acsl_assert(! (__e_acsl_var_22 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_22 != 0,(char *)"Assertion", (char *)"((unsigned int)y != (unsigned int)0xfffffffffffffff)", 19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_18)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.res.oracle index ac011039d4f199c902b6aca57dfa698c9b61d810..6630d462341da870e290e7ba05dc0b7f491b9e08 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.res.oracle @@ -2,34 +2,35 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:236:[value] Assertion got status valid. +PROJECT_FILE.i:237:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:237. + Called from PROJECT_FILE.i:238. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:239:[value] Assertion got status valid. +PROJECT_FILE.i:240:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:240. + Called from PROJECT_FILE.i:241. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:242:[value] Assertion got status valid. +PROJECT_FILE.i:243:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:243. + Called from PROJECT_FILE.i:244. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:245:[value] Assertion got status valid. +PROJECT_FILE.i:246:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:249:[value] Assertion got status valid. +PROJECT_FILE.i:250:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:253:[value] Assertion got status valid. +PROJECT_FILE.i:254:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -47,9 +48,10 @@ PROJECT_FILE.i:253:[value] Assertion got status valid. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -65,21 +67,19 @@ int main(void) x = (long)0; y = 0; /*@ assert (int)x ≡ y; */ ; - e_acsl_assert(! ((int)x == y),(char *)"Assertion",(char *)"((int)x == y)", - 11); + e_acsl_assert((int)x == y,(char *)"Assertion",(char *)"((int)x == y)",11); /*@ assert x ≡ (long)y; */ ; - e_acsl_assert(! (x == (long)y),(char *)"Assertion", - (char *)"(x == (long)y)",12); + e_acsl_assert(x == (long)y,(char *)"Assertion",(char *)"(x == (long)y)",12); /*@ assert y ≡ (int)0; */ ; - e_acsl_assert(! (y == 0),(char *)"Assertion",(char *)"(y == (int)0)",14); + e_acsl_assert(y == 0,(char *)"Assertion",(char *)"(y == (int)0)",14); /*@ assert (unsigned int)y ≡ (unsigned int)0; */ ; - e_acsl_assert(! ((unsigned int)y == (unsigned int)0),(char *)"Assertion", + e_acsl_assert((unsigned int)y == (unsigned int)0,(char *)"Assertion", (char *)"((unsigned int)y == (unsigned int)0)",15); /*@ assert y ≢ (int)0xfffffffffffffff; */ ; - e_acsl_assert(! (y != (int)0xfffffffffffffff),(char *)"Assertion", + e_acsl_assert(y != (int)0xfffffffffffffff,(char *)"Assertion", (char *)"(y != (int)0xfffffffffffffff)",18); /*@ assert (unsigned int)y ≢ (unsigned int)0xfffffffffffffff; */ ; - e_acsl_assert(! ((unsigned int)y != (unsigned int)0xfffffffffffffff), + e_acsl_assert((unsigned int)y != (unsigned int)0xfffffffffffffff, (char *)"Assertion", (char *)"((unsigned int)y != (unsigned int)0xfffffffffffffff)", 19); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.1.res.oracle index b8e3aec59359013d63f3f890c4aa47104472e643..ae41e9603b1ac7b2bb5749a7bd18393c75f88804 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.1.res.oracle @@ -2,482 +2,387 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:237:[value] Assertion got status valid. +PROJECT_FILE.i:238:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:242. + Called from PROJECT_FILE.i:243. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:243. + Called from PROJECT_FILE.i:244. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:245. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:246. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_clear -PROJECT_FILE.i:251:[value] Assertion got status valid. +PROJECT_FILE.i:252:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:256. + Called from PROJECT_FILE.i:257. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:258. + Called from PROJECT_FILE.i:259. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:259. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:260. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:260. + Called from PROJECT_FILE.i:261. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:261. + Called from PROJECT_FILE.i:262. [value] Done for function __gmpz_clear -PROJECT_FILE.i:265:[value] Assertion got status valid. +PROJECT_FILE.i:266:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:270. + Called from PROJECT_FILE.i:271. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:271. + Called from PROJECT_FILE.i:272. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:272. + Called from PROJECT_FILE.i:273. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:273. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:274. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_clear -PROJECT_FILE.i:279:[value] Assertion got status valid. +PROJECT_FILE.i:280:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:284. + Called from PROJECT_FILE.i:285. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:285. + Called from PROJECT_FILE.i:286. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:286. + Called from PROJECT_FILE.i:287. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:287. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:288. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:288. + Called from PROJECT_FILE.i:289. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:289. + Called from PROJECT_FILE.i:290. [value] Done for function __gmpz_clear -PROJECT_FILE.i:294:[value] Assertion got status valid. +PROJECT_FILE.i:295:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:295. + Called from PROJECT_FILE.i:296. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:297:[value] Assertion got status unknown. +PROJECT_FILE.i:298:[value] Assertion got status unknown. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:298. + Called from PROJECT_FILE.i:299. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:300:[value] Assertion got status valid. +PROJECT_FILE.i:301:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:305. + Called from PROJECT_FILE.i:306. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:306. + Called from PROJECT_FILE.i:307. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:307. + Called from PROJECT_FILE.i:308. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:308. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:309. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:309. + Called from PROJECT_FILE.i:310. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:310. + Called from PROJECT_FILE.i:311. [value] Done for function __gmpz_clear -PROJECT_FILE.i:314:[value] Assertion got status valid. +PROJECT_FILE.i:315:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:319. + Called from PROJECT_FILE.i:320. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:320. + Called from PROJECT_FILE.i:321. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:321. + Called from PROJECT_FILE.i:322. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:322. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:323. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:323. + Called from PROJECT_FILE.i:324. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:324. + Called from PROJECT_FILE.i:325. [value] Done for function __gmpz_clear -PROJECT_FILE.i:328:[value] Assertion got status valid. +PROJECT_FILE.i:329:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:333. + Called from PROJECT_FILE.i:334. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:334. + Called from PROJECT_FILE.i:335. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:335. + Called from PROJECT_FILE.i:336. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:336. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:337. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:337. + Called from PROJECT_FILE.i:338. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:338. + Called from PROJECT_FILE.i:339. [value] Done for function __gmpz_clear -PROJECT_FILE.i:342:[value] Assertion got status valid. +PROJECT_FILE.i:343:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:347. + Called from PROJECT_FILE.i:348. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:348. + Called from PROJECT_FILE.i:349. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:349. + Called from PROJECT_FILE.i:350. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:350. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:351. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:351. + Called from PROJECT_FILE.i:352. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:352. + Called from PROJECT_FILE.i:353. [value] Done for function __gmpz_clear -PROJECT_FILE.i:356:[value] Assertion got status valid. +PROJECT_FILE.i:357:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:360. + Called from PROJECT_FILE.i:361. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:361. + Called from PROJECT_FILE.i:362. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:362. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:363. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:363. + Called from PROJECT_FILE.i:364. [value] Done for function __gmpz_clear -PROJECT_FILE.i:367:[value] Assertion got status valid. +PROJECT_FILE.i:368:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:372. + Called from PROJECT_FILE.i:373. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:373. + Called from PROJECT_FILE.i:374. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:374. + Called from PROJECT_FILE.i:375. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:375. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:376. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:376. + Called from PROJECT_FILE.i:377. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:377. + Called from PROJECT_FILE.i:378. [value] Done for function __gmpz_clear -PROJECT_FILE.i:381:[value] Assertion got status valid. +PROJECT_FILE.i:382:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:387. + Called from PROJECT_FILE.i:388. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:388. + Called from PROJECT_FILE.i:389. PROJECT_FILE.i:69:[value] Function __gmpz_init: postcondition got status valid. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:389. + Called from PROJECT_FILE.i:390. PROJECT_FILE.i:128:[value] Function __gmpz_neg: precondition got status valid. PROJECT_FILE.i:129:[value] Function __gmpz_neg: precondition got status valid. [value] Done for function __gmpz_neg [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:390. + Called from PROJECT_FILE.i:391. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:391. + Called from PROJECT_FILE.i:392. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:392. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:393. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:393. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:394. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:395. [value] Done for function __gmpz_clear -PROJECT_FILE.i:399:[value] Assertion got status valid. +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:396. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:400:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:405. + Called from PROJECT_FILE.i:406. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:406. + Called from PROJECT_FILE.i:407. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:407. + Called from PROJECT_FILE.i:408. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:408. + Called from PROJECT_FILE.i:409. [value] Done for function __gmpz_neg [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:409. + Called from PROJECT_FILE.i:410. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:410. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:411. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:411. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:412. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:413. [value] Done for function __gmpz_clear -PROJECT_FILE.i:417:[value] Assertion got status valid. +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:414. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:418:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:423. + Called from PROJECT_FILE.i:424. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:424. + Called from PROJECT_FILE.i:425. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:425. + Called from PROJECT_FILE.i:426. [value] Done for function __gmpz_neg [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:426. + Called from PROJECT_FILE.i:427. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:427. + Called from PROJECT_FILE.i:428. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:428. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:429. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:429. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:430. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:431. [value] Done for function __gmpz_clear -PROJECT_FILE.i:435:[value] Assertion got status valid. +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:432. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:436:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:441. + Called from PROJECT_FILE.i:442. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:442. + Called from PROJECT_FILE.i:443. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:443. + Called from PROJECT_FILE.i:444. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:444. + Called from PROJECT_FILE.i:445. [value] Done for function __gmpz_neg [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:445. + Called from PROJECT_FILE.i:446. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:446. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:447. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:447. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:448. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:449. [value] Done for function __gmpz_clear -PROJECT_FILE.i:453:[value] Assertion got status valid. +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:450. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:454:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:458. + Called from PROJECT_FILE.i:459. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:459. + Called from PROJECT_FILE.i:460. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:460. + Called from PROJECT_FILE.i:461. [value] Done for function __gmpz_neg [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:461. + Called from PROJECT_FILE.i:462. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:462. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:463. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:463. + Called from PROJECT_FILE.i:464. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:464. + Called from PROJECT_FILE.i:465. [value] Done for function __gmpz_clear -PROJECT_FILE.i:468:[value] Assertion got status valid. +PROJECT_FILE.i:469:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:474. + Called from PROJECT_FILE.i:475. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:475. + Called from PROJECT_FILE.i:476. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:476. + Called from PROJECT_FILE.i:477. [value] Done for function __gmpz_init [value] computing for function __gmpz_neg <- main. - Called from PROJECT_FILE.i:477. + Called from PROJECT_FILE.i:478. [value] Done for function __gmpz_neg [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:478. + Called from PROJECT_FILE.i:479. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:479. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:480. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:480. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:481. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:482. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:483. +[value] Done for function __gmpz_clear [value] Recording results for main [value] done for function main [value] ====== VALUES COMPUTED ====== @@ -521,9 +426,10 @@ extern void __gmpz_neg(__mpz_struct * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -548,8 +454,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)y); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 < 0),(char *)"Assertion", - (char *)"(x < y)",9); + e_acsl_assert(__e_acsl_var_3 < 0,(char *)"Assertion",(char *)"(x < y)",9); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); } @@ -563,8 +468,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)x); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 > 0),(char *)"Assertion", - (char *)"(y > x)",10); + e_acsl_assert(__e_acsl_var_6 > 0,(char *)"Assertion",(char *)"(y > x)", + 10); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); } @@ -578,8 +483,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_8),(long)0); __e_acsl_var_9 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_7), (__mpz_struct const *)(__e_acsl_var_8)); - e_acsl_assert(! (__e_acsl_var_9 <= 0),(char *)"Assertion", - (char *)"(x <= 0)",11); + e_acsl_assert(__e_acsl_var_9 <= 0,(char *)"Assertion",(char *)"(x <= 0)", + 11); __gmpz_clear((__mpz_struct *)(__e_acsl_var_7)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_8)); } @@ -593,7 +498,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_11),(long)1); __e_acsl_var_12 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_10), (__mpz_struct const *)(__e_acsl_var_11)); - e_acsl_assert(! (__e_acsl_var_12 >= 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_12 >= 0,(char *)"Assertion", (char *)"(y >= 1)",12); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_11)); @@ -601,9 +506,9 @@ int main(void) s = (char *)"toto"; /*@ assert s ≡ s; */ ; - e_acsl_assert(! (s == s),(char *)"Assertion",(char *)"(s == s)",14); + e_acsl_assert(s == s,(char *)"Assertion",(char *)"(s == s)",14); /*@ assert "toto" ≢ "titi"; */ ; - e_acsl_assert(! ("toto" != "titi"),(char *)"Assertion", + e_acsl_assert("toto" != "titi",(char *)"Assertion", (char *)"(\"toto\" != \"titi\")",15); /*@ assert 5 < 18; */ ; { @@ -614,8 +519,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_14),(long)18); __e_acsl_var_15 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_13), (__mpz_struct const *)(__e_acsl_var_14)); - e_acsl_assert(! (__e_acsl_var_15 < 0),(char *)"Assertion", - (char *)"(5 < 18)",16); + e_acsl_assert(__e_acsl_var_15 < 0,(char *)"Assertion",(char *)"(5 < 18)", + 16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_13)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_14)); } @@ -629,8 +534,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_17),(long)3); __e_acsl_var_18 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_16), (__mpz_struct const *)(__e_acsl_var_17)); - e_acsl_assert(! (__e_acsl_var_18 > 0),(char *)"Assertion", - (char *)"(32 > 3)",17); + e_acsl_assert(__e_acsl_var_18 > 0,(char *)"Assertion",(char *)"(32 > 3)", + 17); __gmpz_clear((__mpz_struct *)(__e_acsl_var_16)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_17)); } @@ -644,7 +549,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_20),(long)13); __e_acsl_var_21 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_19), (__mpz_struct const *)(__e_acsl_var_20)); - e_acsl_assert(! (__e_acsl_var_21 <= 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_21 <= 0,(char *)"Assertion", (char *)"(12 <= 13)",18); __gmpz_clear((__mpz_struct *)(__e_acsl_var_19)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_20)); @@ -659,7 +564,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_23),(long)12); __e_acsl_var_24 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_22), (__mpz_struct const *)(__e_acsl_var_23)); - e_acsl_assert(! (__e_acsl_var_24 >= 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_24 >= 0,(char *)"Assertion", (char *)"(123 >= 12)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_22)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_23)); @@ -672,7 +577,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_25),(long)0xff); __e_acsl_var_26 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_25), (__mpz_struct const *)(__e_acsl_var_25)); - e_acsl_assert(! (__e_acsl_var_26 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_26 == 0,(char *)"Assertion", (char *)"(0xff == 0xff)",20); __gmpz_clear((__mpz_struct *)(__e_acsl_var_25)); } @@ -686,7 +591,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_28),(long)2); __e_acsl_var_29 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_27), (__mpz_struct const *)(__e_acsl_var_28)); - e_acsl_assert(! (__e_acsl_var_29 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_29 != 0,(char *)"Assertion", (char *)"(1 != 2)",21); __gmpz_clear((__mpz_struct *)(__e_acsl_var_27)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_28)); @@ -705,7 +610,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_32),(long)18); __e_acsl_var_33 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_31), (__mpz_struct const *)(__e_acsl_var_32)); - e_acsl_assert(! (__e_acsl_var_33 < 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_33 < 0,(char *)"Assertion", (char *)"(-5 < 18)",23); __gmpz_clear((__mpz_struct *)(__e_acsl_var_30)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_31)); @@ -725,7 +630,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_35)); __e_acsl_var_37 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_36)); - e_acsl_assert(! (__e_acsl_var_37 > 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_37 > 0,(char *)"Assertion", (char *)"(32 > -3)",24); __gmpz_clear((__mpz_struct *)(__e_acsl_var_34)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_35)); @@ -745,7 +650,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_40),(long)13); __e_acsl_var_41 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_39), (__mpz_struct const *)(__e_acsl_var_40)); - e_acsl_assert(! (__e_acsl_var_41 <= 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_41 <= 0,(char *)"Assertion", (char *)"(-12 <= 13)",25); __gmpz_clear((__mpz_struct *)(__e_acsl_var_38)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_39)); @@ -765,7 +670,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_43)); __e_acsl_var_45 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_42), (__mpz_struct const *)(__e_acsl_var_44)); - e_acsl_assert(! (__e_acsl_var_45 >= 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_45 >= 0,(char *)"Assertion", (char *)"(123 >= -12)",26); __gmpz_clear((__mpz_struct *)(__e_acsl_var_42)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_43)); @@ -783,7 +688,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_46)); __e_acsl_var_48 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_47), (__mpz_struct const *)(__e_acsl_var_47)); - e_acsl_assert(! (__e_acsl_var_48 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_48 == 0,(char *)"Assertion", (char *)"(-0xff == -0xff)",27); __gmpz_clear((__mpz_struct *)(__e_acsl_var_46)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_47)); @@ -802,7 +707,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_50)); __e_acsl_var_52 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_49), (__mpz_struct const *)(__e_acsl_var_51)); - e_acsl_assert(! (__e_acsl_var_52 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_52 != 0,(char *)"Assertion", (char *)"(1 != -2)",28); __gmpz_clear((__mpz_struct *)(__e_acsl_var_49)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_50)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.res.oracle index 5d7164da93aa559c3542aeab75a368e6c72352c2..a58077a3990d63ef404c75602b003a2a5ba0a2c2 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.res.oracle @@ -2,94 +2,95 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:237:[value] Assertion got status valid. +PROJECT_FILE.i:238:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:238. + Called from PROJECT_FILE.i:239. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:240:[value] Assertion got status valid. +PROJECT_FILE.i:241:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:241. + Called from PROJECT_FILE.i:242. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:243:[value] Assertion got status valid. +PROJECT_FILE.i:244:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:246:[value] Assertion got status valid. +PROJECT_FILE.i:247:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:250:[value] Assertion got status valid. +PROJECT_FILE.i:251:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:251. + Called from PROJECT_FILE.i:252. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:253:[value] Assertion got status unknown. +PROJECT_FILE.i:254:[value] Assertion got status unknown. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:256:[value] Assertion got status valid. +PROJECT_FILE.i:257:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:258. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:259:[value] Assertion got status valid. +PROJECT_FILE.i:260:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:260. + Called from PROJECT_FILE.i:261. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:262:[value] Assertion got status valid. +PROJECT_FILE.i:263:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:263. + Called from PROJECT_FILE.i:264. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:265:[value] Assertion got status valid. +PROJECT_FILE.i:266:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:266. + Called from PROJECT_FILE.i:267. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:268:[value] Assertion got status valid. +PROJECT_FILE.i:269:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:269. + Called from PROJECT_FILE.i:270. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:271:[value] Assertion got status valid. +PROJECT_FILE.i:272:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:272. + Called from PROJECT_FILE.i:273. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:274:[value] Assertion got status valid. +PROJECT_FILE.i:275:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:277:[value] Assertion got status valid. +PROJECT_FILE.i:278:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:280:[value] Assertion got status valid. +PROJECT_FILE.i:281:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:281. + Called from PROJECT_FILE.i:282. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:283:[value] Assertion got status valid. +PROJECT_FILE.i:284:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:284. + Called from PROJECT_FILE.i:285. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:286:[value] Assertion got status valid. +PROJECT_FILE.i:287:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:287. + Called from PROJECT_FILE.i:288. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:289:[value] Assertion got status valid. +PROJECT_FILE.i:290:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:290. + Called from PROJECT_FILE.i:291. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -108,9 +109,10 @@ PROJECT_FILE.i:289:[value] Assertion got status valid. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -127,45 +129,44 @@ int main(void) x = 0; y = 1; /*@ assert x < y; */ ; - e_acsl_assert(! (x < y),(char *)"Assertion",(char *)"(x < y)",9); + e_acsl_assert(x < y,(char *)"Assertion",(char *)"(x < y)",9); /*@ assert y > x; */ ; - e_acsl_assert(! (y > x),(char *)"Assertion",(char *)"(y > x)",10); + e_acsl_assert(y > x,(char *)"Assertion",(char *)"(y > x)",10); /*@ assert x ≤ 0; */ ; - e_acsl_assert(! (x <= 0),(char *)"Assertion",(char *)"(x <= 0)",11); + e_acsl_assert(x <= 0,(char *)"Assertion",(char *)"(x <= 0)",11); /*@ assert y ≥ 1; */ ; - e_acsl_assert(! (y >= 1),(char *)"Assertion",(char *)"(y >= 1)",12); + e_acsl_assert(y >= 1,(char *)"Assertion",(char *)"(y >= 1)",12); s = (char *)"toto"; /*@ assert s ≡ s; */ ; - e_acsl_assert(! (s == s),(char *)"Assertion",(char *)"(s == s)",14); + e_acsl_assert(s == s,(char *)"Assertion",(char *)"(s == s)",14); /*@ assert "toto" ≢ "titi"; */ ; - e_acsl_assert(! ("toto" != "titi"),(char *)"Assertion", + e_acsl_assert("toto" != "titi",(char *)"Assertion", (char *)"(\"toto\" != \"titi\")",15); /*@ assert 5 < 18; */ ; - e_acsl_assert(! (5 < 18),(char *)"Assertion",(char *)"(5 < 18)",16); + e_acsl_assert(5 < 18,(char *)"Assertion",(char *)"(5 < 18)",16); /*@ assert 32 > 3; */ ; - e_acsl_assert(! (32 > 3),(char *)"Assertion",(char *)"(32 > 3)",17); + e_acsl_assert(32 > 3,(char *)"Assertion",(char *)"(32 > 3)",17); /*@ assert 12 ≤ 13; */ ; - e_acsl_assert(! (12 <= 13),(char *)"Assertion",(char *)"(12 <= 13)",18); + e_acsl_assert(12 <= 13,(char *)"Assertion",(char *)"(12 <= 13)",18); /*@ assert 123 ≥ 12; */ ; - e_acsl_assert(! (123 >= 12),(char *)"Assertion",(char *)"(123 >= 12)",19); + e_acsl_assert(123 >= 12,(char *)"Assertion",(char *)"(123 >= 12)",19); /*@ assert 0xff ≡ 0xff; */ ; - e_acsl_assert(! (0xff == 0xff),(char *)"Assertion", - (char *)"(0xff == 0xff)",20); + e_acsl_assert(0xff == 0xff,(char *)"Assertion",(char *)"(0xff == 0xff)",20); /*@ assert 1 ≢ 2; */ ; - e_acsl_assert(! (1 != 2),(char *)"Assertion",(char *)"(1 != 2)",21); + e_acsl_assert(1 != 2,(char *)"Assertion",(char *)"(1 != 2)",21); /*@ assert -5 < 18; */ ; - e_acsl_assert(! (-5 < 18),(char *)"Assertion",(char *)"(-5 < 18)",23); + e_acsl_assert(-5 < 18,(char *)"Assertion",(char *)"(-5 < 18)",23); /*@ assert 32 > -3; */ ; - e_acsl_assert(! (32 > -3),(char *)"Assertion",(char *)"(32 > -3)",24); + e_acsl_assert(32 > -3,(char *)"Assertion",(char *)"(32 > -3)",24); /*@ assert -12 ≤ 13; */ ; - e_acsl_assert(! (-12 <= 13),(char *)"Assertion",(char *)"(-12 <= 13)",25); + e_acsl_assert(-12 <= 13,(char *)"Assertion",(char *)"(-12 <= 13)",25); /*@ assert 123 ≥ -12; */ ; - e_acsl_assert(! (123 >= -12),(char *)"Assertion",(char *)"(123 >= -12)",26); + e_acsl_assert(123 >= -12,(char *)"Assertion",(char *)"(123 >= -12)",26); /*@ assert -0xff ≡ -0xff; */ ; - e_acsl_assert(! (-0xff == -0xff),(char *)"Assertion", + e_acsl_assert(-0xff == -0xff,(char *)"Assertion", (char *)"(-0xff == -0xff)",27); /*@ assert 1 ≢ -2; */ ; - e_acsl_assert(! (1 != -2),(char *)"Assertion",(char *)"(1 != -2)",28); + e_acsl_assert(1 != -2,(char *)"Assertion",(char *)"(1 != -2)",28); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/false.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/false.1.res.oracle index 15b758f60202e807156869e4109fe358b1fee78f..2fff7cb272517de5f41d0b018024fabff4142bfe 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/false.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/false.1.res.oracle @@ -15,9 +15,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -32,7 +33,7 @@ int main(void) x = 0; if (x) { /*@ assert \false; */ ; - e_acsl_assert(1,(char *)"Assertion",(char *)"(\\false)",8); + e_acsl_assert(0,(char *)"Assertion",(char *)"(\\false)",8); } __retres = 0; return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/false.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/false.res.oracle index 15b758f60202e807156869e4109fe358b1fee78f..2fff7cb272517de5f41d0b018024fabff4142bfe 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/false.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/false.res.oracle @@ -15,9 +15,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -32,7 +33,7 @@ int main(void) x = 0; if (x) { /*@ assert \false; */ ; - e_acsl_assert(1,(char *)"Assertion",(char *)"(\\false)",8); + e_acsl_assert(0,(char *)"Assertion",(char *)"(\\false)",8); } __retres = 0; return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.1.res.oracle index b7818bc190e8bd6f400f1c799d156d2e51470ece..8470142c5f17016e0de416c1aa50268fb514b66e 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.1.res.oracle @@ -5,165 +5,126 @@ X ∈ {0} Y ∈ {2} [value] computing for function f <- main. - Called from PROJECT_FILE.i:685. + Called from PROJECT_FILE.i:686. [value] computing for function __gmpz_init_set_si <- f <- main. - Called from PROJECT_FILE.i:239. + Called from PROJECT_FILE.i:240. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- f <- main. - Called from PROJECT_FILE.i:240. + Called from PROJECT_FILE.i:241. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- f <- main. - Called from PROJECT_FILE.i:241. + Called from PROJECT_FILE.i:242. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:242. -[value] computing for function printf <- e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:243. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- f <- main. - Called from PROJECT_FILE.i:243. + Called from PROJECT_FILE.i:244. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- f <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Done for function __gmpz_clear -PROJECT_FILE.i:231:[value] Function f: postcondition got status valid. +PROJECT_FILE.i:232:[value] Function f: postcondition got status valid. [value] Recording results for f [value] Done for function f [value] computing for function g <- main. - Called from PROJECT_FILE.i:686. + Called from PROJECT_FILE.i:687. [value] computing for function __gmpz_init_set_si <- g <- main. - Called from PROJECT_FILE.i:261. + Called from PROJECT_FILE.i:262. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- g <- main. - Called from PROJECT_FILE.i:262. + Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- g <- main. - Called from PROJECT_FILE.i:263. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:264. -[value] computing for function printf <- e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:265. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_init_set_si <- g <- main. - Called from PROJECT_FILE.i:265. + Called from PROJECT_FILE.i:266. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- g <- main. - Called from PROJECT_FILE.i:266. + Called from PROJECT_FILE.i:267. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:267. -[value] computing for function printf <- e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:268. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- g <- main. - Called from PROJECT_FILE.i:268. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- g <- main. Called from PROJECT_FILE.i:269. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- g <- main. Called from PROJECT_FILE.i:270. [value] Done for function __gmpz_clear -PROJECT_FILE.i:250:[value] Function g: postcondition got status valid. +[value] computing for function __gmpz_clear <- g <- main. + Called from PROJECT_FILE.i:271. +[value] Done for function __gmpz_clear PROJECT_FILE.i:251:[value] Function g: postcondition got status valid. +PROJECT_FILE.i:252:[value] Function g: postcondition got status valid. [value] Recording results for g [value] Done for function g [value] computing for function h <- main. - Called from PROJECT_FILE.i:687. -PROJECT_FILE.i:276:[value] Function h: precondition got status valid. + Called from PROJECT_FILE.i:688. +PROJECT_FILE.i:277:[value] Function h: precondition got status valid. [value] computing for function __gmpz_init_set_si <- h <- main. - Called from PROJECT_FILE.i:283. + Called from PROJECT_FILE.i:284. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- h <- main. - Called from PROJECT_FILE.i:284. + Called from PROJECT_FILE.i:285. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- h <- main. - Called from PROJECT_FILE.i:285. + Called from PROJECT_FILE.i:286. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- h <- main. - Called from PROJECT_FILE.i:286. -[value] computing for function printf <- e_acsl_assert <- h <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- h <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:287. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- h <- main. - Called from PROJECT_FILE.i:287. + Called from PROJECT_FILE.i:288. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- h <- main. - Called from PROJECT_FILE.i:288. + Called from PROJECT_FILE.i:289. [value] Done for function __gmpz_clear [value] Recording results for h [value] Done for function h [value] computing for function i <- main. - Called from PROJECT_FILE.i:688. -PROJECT_FILE.i:295:[value] Function i: precondition got status valid. + Called from PROJECT_FILE.i:689. PROJECT_FILE.i:296:[value] Function i: precondition got status valid. +PROJECT_FILE.i:297:[value] Function i: precondition got status valid. [value] computing for function __gmpz_init_set_si <- i <- main. - Called from PROJECT_FILE.i:306. + Called from PROJECT_FILE.i:307. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- i <- main. - Called from PROJECT_FILE.i:307. + Called from PROJECT_FILE.i:308. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- i <- main. - Called from PROJECT_FILE.i:308. + Called from PROJECT_FILE.i:309. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- i <- main. - Called from PROJECT_FILE.i:309. -[value] computing for function printf <- e_acsl_assert <- i <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- i <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:310. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_init_set_si <- i <- main. - Called from PROJECT_FILE.i:310. + Called from PROJECT_FILE.i:311. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- i <- main. - Called from PROJECT_FILE.i:311. + Called from PROJECT_FILE.i:312. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- i <- main. - Called from PROJECT_FILE.i:312. + Called from PROJECT_FILE.i:313. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- i <- main. - Called from PROJECT_FILE.i:313. -[value] computing for function printf <- e_acsl_assert <- i <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- i <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:314. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- i <- main. - Called from PROJECT_FILE.i:314. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- i <- main. Called from PROJECT_FILE.i:315. [value] Done for function __gmpz_clear @@ -173,80 +134,62 @@ PROJECT_FILE.i:296:[value] Function i: precondition got status valid. [value] computing for function __gmpz_clear <- i <- main. Called from PROJECT_FILE.i:317. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- i <- main. + Called from PROJECT_FILE.i:318. +[value] Done for function __gmpz_clear [value] Recording results for i [value] Done for function i [value] computing for function j <- main. - Called from PROJECT_FILE.i:689. -PROJECT_FILE.i:325:[value] Function j, behavior b1: precondition got status valid. -PROJECT_FILE.i:329:[value] Function j, behavior b2: precondition got status valid. + Called from PROJECT_FILE.i:690. +PROJECT_FILE.i:326:[value] Function j, behavior b1: precondition got status valid. PROJECT_FILE.i:330:[value] Function j, behavior b2: precondition got status valid. +PROJECT_FILE.i:331:[value] Function j, behavior b2: precondition got status valid. [value] computing for function __gmpz_init_set_si <- j <- main. - Called from PROJECT_FILE.i:347. + Called from PROJECT_FILE.i:348. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- j <- main. - Called from PROJECT_FILE.i:348. + Called from PROJECT_FILE.i:349. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- j <- main. - Called from PROJECT_FILE.i:349. + Called from PROJECT_FILE.i:350. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:350. -[value] computing for function printf <- e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:351. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_init_set_si <- j <- main. - Called from PROJECT_FILE.i:351. + Called from PROJECT_FILE.i:352. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- j <- main. - Called from PROJECT_FILE.i:352. + Called from PROJECT_FILE.i:353. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- j <- main. - Called from PROJECT_FILE.i:353. + Called from PROJECT_FILE.i:354. PROJECT_FILE.i:69:[value] Function __gmpz_init: postcondition got status valid. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- j <- main. - Called from PROJECT_FILE.i:354. + Called from PROJECT_FILE.i:355. PROJECT_FILE.i:133:[value] Function __gmpz_add: precondition got status valid. PROJECT_FILE.i:134:[value] Function __gmpz_add: precondition got status valid. PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid. [value] Done for function __gmpz_add [value] computing for function __gmpz_cmp <- j <- main. - Called from PROJECT_FILE.i:355. + Called from PROJECT_FILE.i:356. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:356. -[value] computing for function printf <- e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:357. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_init_set_si <- j <- main. - Called from PROJECT_FILE.i:357. + Called from PROJECT_FILE.i:358. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- j <- main. - Called from PROJECT_FILE.i:358. + Called from PROJECT_FILE.i:359. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:359. -[value] computing for function printf <- e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:360. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- j <- main. - Called from PROJECT_FILE.i:360. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- j <- main. Called from PROJECT_FILE.i:361. [value] Done for function __gmpz_clear @@ -262,53 +205,41 @@ PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid. [value] computing for function __gmpz_clear <- j <- main. Called from PROJECT_FILE.i:365. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- j <- main. + Called from PROJECT_FILE.i:366. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- j <- main. - Called from PROJECT_FILE.i:377. + Called from PROJECT_FILE.i:378. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- j <- main. - Called from PROJECT_FILE.i:378. + Called from PROJECT_FILE.i:379. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- j <- main. - Called from PROJECT_FILE.i:379. + Called from PROJECT_FILE.i:380. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:380. -[value] computing for function printf <- e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:381. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_init_set_si <- j <- main. - Called from PROJECT_FILE.i:381. + Called from PROJECT_FILE.i:382. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- j <- main. - Called from PROJECT_FILE.i:382. + Called from PROJECT_FILE.i:383. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- j <- main. - Called from PROJECT_FILE.i:383. + Called from PROJECT_FILE.i:384. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- j <- main. - Called from PROJECT_FILE.i:384. + Called from PROJECT_FILE.i:385. [value] Done for function __gmpz_add [value] computing for function __gmpz_cmp <- j <- main. - Called from PROJECT_FILE.i:385. + Called from PROJECT_FILE.i:386. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:386. -[value] computing for function printf <- e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:387. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- j <- main. - Called from PROJECT_FILE.i:387. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- j <- main. Called from PROJECT_FILE.i:388. [value] Done for function __gmpz_clear @@ -321,135 +252,123 @@ PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid. [value] computing for function __gmpz_clear <- j <- main. Called from PROJECT_FILE.i:391. [value] Done for function __gmpz_clear -PROJECT_FILE.i:326:[value] Function j, behavior b1: postcondition got status valid. -PROJECT_FILE.i:331:[value] Function j, behavior b2: postcondition got status valid. +[value] computing for function __gmpz_clear <- j <- main. + Called from PROJECT_FILE.i:392. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:327:[value] Function j, behavior b1: postcondition got status valid. +PROJECT_FILE.i:332:[value] Function j, behavior b2: postcondition got status valid. [value] Recording results for j [value] Done for function j [value] computing for function k <- main. - Called from PROJECT_FILE.i:690. -PROJECT_FILE.i:399:[value] Function k, behavior b1: assumption got status invalid; precondition not evaluated. -PROJECT_FILE.i:404:[value] Function k, behavior b2: precondition got status valid. + Called from PROJECT_FILE.i:691. +PROJECT_FILE.i:400:[value] Function k, behavior b1: assumption got status invalid; precondition not evaluated. PROJECT_FILE.i:405:[value] Function k, behavior b2: precondition got status valid. +PROJECT_FILE.i:406:[value] Function k, behavior b2: precondition got status valid. [value] computing for function __gmpz_init_set_si <- k <- main. - Called from PROJECT_FILE.i:423. + Called from PROJECT_FILE.i:424. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- k <- main. - Called from PROJECT_FILE.i:424. + Called from PROJECT_FILE.i:425. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- k <- main. - Called from PROJECT_FILE.i:425. + Called from PROJECT_FILE.i:426. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- k <- main. - Called from PROJECT_FILE.i:431. + Called from PROJECT_FILE.i:432. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- k <- main. - Called from PROJECT_FILE.i:432. + Called from PROJECT_FILE.i:433. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- k <- main. - Called from PROJECT_FILE.i:433. + Called from PROJECT_FILE.i:434. [value] Done for function __gmpz_cmp -PROJECT_FILE.i:434:[value] assigning non deterministic value for the first time +PROJECT_FILE.i:435:[value] assigning non deterministic value for the first time [value] computing for function __gmpz_clear <- k <- main. - Called from PROJECT_FILE.i:435. + Called from PROJECT_FILE.i:436. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- k <- main. - Called from PROJECT_FILE.i:436. + Called from PROJECT_FILE.i:437. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- k <- main. - Called from PROJECT_FILE.i:438. -[value] computing for function printf <- e_acsl_assert <- k <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- k <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:439. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_init_set_si <- k <- main. - Called from PROJECT_FILE.i:439. + Called from PROJECT_FILE.i:440. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- k <- main. - Called from PROJECT_FILE.i:440. + Called from PROJECT_FILE.i:441. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- k <- main. - Called from PROJECT_FILE.i:445. + Called from PROJECT_FILE.i:446. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- k <- main. - Called from PROJECT_FILE.i:446. + Called from PROJECT_FILE.i:447. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- k <- main. - Called from PROJECT_FILE.i:447. + Called from PROJECT_FILE.i:448. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- k <- main. - Called from PROJECT_FILE.i:449. + Called from PROJECT_FILE.i:450. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- k <- main. - Called from PROJECT_FILE.i:450. + Called from PROJECT_FILE.i:451. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- k <- main. - Called from PROJECT_FILE.i:458. + Called from PROJECT_FILE.i:459. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- k <- main. - Called from PROJECT_FILE.i:459. + Called from PROJECT_FILE.i:460. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- k <- main. - Called from PROJECT_FILE.i:460. + Called from PROJECT_FILE.i:461. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- k <- main. - Called from PROJECT_FILE.i:462. + Called from PROJECT_FILE.i:463. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- k <- main. - Called from PROJECT_FILE.i:463. + Called from PROJECT_FILE.i:464. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- k <- main. - Called from PROJECT_FILE.i:465. -[value] computing for function printf <- e_acsl_assert <- k <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- k <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:466. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- k <- main. - Called from PROJECT_FILE.i:467. + Called from PROJECT_FILE.i:468. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- k <- main. - Called from PROJECT_FILE.i:472. + Called from PROJECT_FILE.i:473. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- k <- main. - Called from PROJECT_FILE.i:473. + Called from PROJECT_FILE.i:474. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- k <- main. - Called from PROJECT_FILE.i:474. + Called from PROJECT_FILE.i:475. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- k <- main. - Called from PROJECT_FILE.i:476. + Called from PROJECT_FILE.i:477. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- k <- main. - Called from PROJECT_FILE.i:477. + Called from PROJECT_FILE.i:478. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- k <- main. - Called from PROJECT_FILE.i:487. + Called from PROJECT_FILE.i:488. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- k <- main. - Called from PROJECT_FILE.i:488. + Called from PROJECT_FILE.i:489. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- k <- main. - Called from PROJECT_FILE.i:489. + Called from PROJECT_FILE.i:490. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- k <- main. - Called from PROJECT_FILE.i:490. + Called from PROJECT_FILE.i:491. [value] Done for function __gmpz_add [value] computing for function __gmpz_init_set_si <- k <- main. - Called from PROJECT_FILE.i:491. + Called from PROJECT_FILE.i:492. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- k <- main. - Called from PROJECT_FILE.i:492. + Called from PROJECT_FILE.i:493. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- k <- main. - Called from PROJECT_FILE.i:494. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- k <- main. Called from PROJECT_FILE.i:495. [value] Done for function __gmpz_clear @@ -459,231 +378,201 @@ PROJECT_FILE.i:434:[value] assigning non deterministic value for the first time [value] computing for function __gmpz_clear <- k <- main. Called from PROJECT_FILE.i:497. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- k <- main. + Called from PROJECT_FILE.i:498. +[value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- k <- main. - Called from PROJECT_FILE.i:499. -[value] computing for function printf <- e_acsl_assert <- k <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- k <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:500. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- k <- main. - Called from PROJECT_FILE.i:501. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- k <- main. Called from PROJECT_FILE.i:502. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- k <- main. Called from PROJECT_FILE.i:503. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- k <- main. + Called from PROJECT_FILE.i:504. +[value] Done for function __gmpz_clear [value] Recording results for k [value] Done for function k [value] computing for function l <- main. - Called from PROJECT_FILE.i:691. -PROJECT_FILE.i:513:[value] Assertion got status valid. + Called from PROJECT_FILE.i:692. +PROJECT_FILE.i:514:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- l <- main. - Called from PROJECT_FILE.i:518. + Called from PROJECT_FILE.i:519. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- l <- main. - Called from PROJECT_FILE.i:519. + Called from PROJECT_FILE.i:520. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- l <- main. - Called from PROJECT_FILE.i:520. + Called from PROJECT_FILE.i:521. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- l <- main. - Called from PROJECT_FILE.i:521. -[value] computing for function printf <- e_acsl_assert <- l <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- l <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:522. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- l <- main. - Called from PROJECT_FILE.i:522. + Called from PROJECT_FILE.i:523. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- l <- main. - Called from PROJECT_FILE.i:523. + Called from PROJECT_FILE.i:524. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- l <- main. - Called from PROJECT_FILE.i:531. + Called from PROJECT_FILE.i:532. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- l <- main. - Called from PROJECT_FILE.i:532. + Called from PROJECT_FILE.i:533. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- l <- main. - Called from PROJECT_FILE.i:533. + Called from PROJECT_FILE.i:534. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- l <- main. - Called from PROJECT_FILE.i:534. -[value] computing for function printf <- e_acsl_assert <- l <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- l <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:535. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- l <- main. - Called from PROJECT_FILE.i:535. + Called from PROJECT_FILE.i:536. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- l <- main. - Called from PROJECT_FILE.i:536. + Called from PROJECT_FILE.i:537. [value] Done for function __gmpz_clear -PROJECT_FILE.i:510:[value] Function l: postcondition got status valid. +PROJECT_FILE.i:511:[value] Function l: postcondition got status valid. [value] Recording results for l [value] Done for function l [value] computing for function m <- main. - Called from PROJECT_FILE.i:692. + Called from PROJECT_FILE.i:693. [value] computing for function __gmpz_init_set_si <- m <- main. - Called from PROJECT_FILE.i:566. + Called from PROJECT_FILE.i:567. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- m <- main. - Called from PROJECT_FILE.i:567. + Called from PROJECT_FILE.i:568. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- m <- main. - Called from PROJECT_FILE.i:568. + Called from PROJECT_FILE.i:569. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- m <- main. - Called from PROJECT_FILE.i:573. + Called from PROJECT_FILE.i:574. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- m <- main. - Called from PROJECT_FILE.i:574. + Called from PROJECT_FILE.i:575. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- m <- main. - Called from PROJECT_FILE.i:575. + Called from PROJECT_FILE.i:576. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- m <- main. - Called from PROJECT_FILE.i:577. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- m <- main. Called from PROJECT_FILE.i:578. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- m <- main. - Called from PROJECT_FILE.i:582. + Called from PROJECT_FILE.i:579. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- m <- main. Called from PROJECT_FILE.i:583. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- m <- main. + Called from PROJECT_FILE.i:584. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- m <- main. - Called from PROJECT_FILE.i:591. + Called from PROJECT_FILE.i:592. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- m <- main. - Called from PROJECT_FILE.i:592. + Called from PROJECT_FILE.i:593. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- m <- main. - Called from PROJECT_FILE.i:593. + Called from PROJECT_FILE.i:594. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- m <- main. - Called from PROJECT_FILE.i:598. + Called from PROJECT_FILE.i:599. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- m <- main. - Called from PROJECT_FILE.i:599. + Called from PROJECT_FILE.i:600. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- m <- main. - Called from PROJECT_FILE.i:600. + Called from PROJECT_FILE.i:601. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- m <- main. - Called from PROJECT_FILE.i:602. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- m <- main. Called from PROJECT_FILE.i:603. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- m <- main. - Called from PROJECT_FILE.i:607. + Called from PROJECT_FILE.i:604. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- m <- main. Called from PROJECT_FILE.i:608. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- m <- main. + Called from PROJECT_FILE.i:609. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- m <- main. - Called from PROJECT_FILE.i:615. + Called from PROJECT_FILE.i:616. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- m <- main. - Called from PROJECT_FILE.i:616. + Called from PROJECT_FILE.i:617. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- m <- main. - Called from PROJECT_FILE.i:617. + Called from PROJECT_FILE.i:618. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- m <- main. - Called from PROJECT_FILE.i:619. + Called from PROJECT_FILE.i:620. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- m <- main. - Called from PROJECT_FILE.i:620. + Called from PROJECT_FILE.i:621. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- m <- main. - Called from PROJECT_FILE.i:633. + Called from PROJECT_FILE.i:634. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- m <- main. - Called from PROJECT_FILE.i:634. + Called from PROJECT_FILE.i:635. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- m <- main. - Called from PROJECT_FILE.i:635. + Called from PROJECT_FILE.i:636. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- m <- main. - Called from PROJECT_FILE.i:637. + Called from PROJECT_FILE.i:638. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- m <- main. - Called from PROJECT_FILE.i:638. + Called from PROJECT_FILE.i:639. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- m <- main. - Called from PROJECT_FILE.i:640. -[value] computing for function printf <- e_acsl_assert <- m <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- m <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:641. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_init_set_si <- m <- main. - Called from PROJECT_FILE.i:647. + Called from PROJECT_FILE.i:648. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- m <- main. - Called from PROJECT_FILE.i:648. + Called from PROJECT_FILE.i:649. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- m <- main. - Called from PROJECT_FILE.i:649. + Called from PROJECT_FILE.i:650. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- m <- main. - Called from PROJECT_FILE.i:651. + Called from PROJECT_FILE.i:652. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- m <- main. - Called from PROJECT_FILE.i:652. + Called from PROJECT_FILE.i:653. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- m <- main. - Called from PROJECT_FILE.i:654. -[value] computing for function printf <- e_acsl_assert <- m <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- m <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:655. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_init_set_si <- m <- main. - Called from PROJECT_FILE.i:663. -[value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- m <- main. Called from PROJECT_FILE.i:664. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- m <- main. Called from PROJECT_FILE.i:665. [value] Done for function __gmpz_init_set_si -[value] computing for function __gmpz_init <- m <- main. +[value] computing for function __gmpz_init_set_si <- m <- main. Called from PROJECT_FILE.i:666. +[value] Done for function __gmpz_init_set_si +[value] computing for function __gmpz_init <- m <- main. + Called from PROJECT_FILE.i:667. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- m <- main. - Called from PROJECT_FILE.i:667. + Called from PROJECT_FILE.i:668. [value] Done for function __gmpz_add [value] computing for function __gmpz_cmp <- m <- main. - Called from PROJECT_FILE.i:668. + Called from PROJECT_FILE.i:669. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- m <- main. - Called from PROJECT_FILE.i:670. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- m <- main. Called from PROJECT_FILE.i:671. [value] Done for function __gmpz_clear @@ -693,19 +582,16 @@ PROJECT_FILE.i:510:[value] Function l: postcondition got status valid. [value] computing for function __gmpz_clear <- m <- main. Called from PROJECT_FILE.i:673. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- m <- main. + Called from PROJECT_FILE.i:674. +[value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- m <- main. - Called from PROJECT_FILE.i:675. -[value] computing for function printf <- e_acsl_assert <- m <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- m <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:676. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:544:[value] Function m, behavior b1: assumes got status invalid; post-condition not evaluated. -PROJECT_FILE.i:549:[value] Function m, behavior b2: postcondition got status valid. +PROJECT_FILE.i:545:[value] Function m, behavior b1: assumes got status invalid; post-condition not evaluated. PROJECT_FILE.i:550:[value] Function m, behavior b2: postcondition got status valid. +PROJECT_FILE.i:551:[value] Function m, behavior b2: postcondition got status valid. [value] Recording results for m [value] Done for function m [value] Recording results for main @@ -771,9 +657,10 @@ extern void __gmpz_add(__mpz_struct * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -795,7 +682,7 @@ void f(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)1); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Postcondition", (char *)"(X == 1)",10); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -819,12 +706,12 @@ void g(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)2); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Postcondition", (char *)"(X == 2)",14); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_4),(long)Y); __e_acsl_var_5 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_5 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_5 == 0,(char *)"Postcondition", (char *)"(Y == 2)",15); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -845,7 +732,7 @@ void h(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)2); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Precondition", (char *)"(X == 2)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -870,13 +757,13 @@ void i(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)3); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Precondition", (char *)"(X == 3)",23); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_4),(long)Y); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)2); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_6 == 0,(char *)"Precondition", (char *)"(Y == 2)",24); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -915,7 +802,7 @@ void j(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)5); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Precondition", (char *)"(X == 5)",29); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_4),(long)3); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)Y); @@ -925,12 +812,12 @@ void j(void) (__mpz_struct const *)(__e_acsl_var_5)); __e_acsl_var_7 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_6)); - e_acsl_assert(! (__e_acsl_var_7 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_7 == 0,(char *)"Precondition", (char *)"(X == 3+Y)",32); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_8),(long)2); __e_acsl_var_9 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_5), (__mpz_struct const *)(__e_acsl_var_8)); - e_acsl_assert(! (__e_acsl_var_9 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_9 == 0,(char *)"Precondition", (char *)"(Y == 2)",33); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -953,7 +840,7 @@ void j(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_11),(long)3); __e_acsl_var_12 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_10), (__mpz_struct const *)(__e_acsl_var_11)); - e_acsl_assert(! (__e_acsl_var_12 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_12 == 0,(char *)"Postcondition", (char *)"(X == 3)",30); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_13),(long)Y); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_14),(long)1); @@ -963,7 +850,7 @@ void j(void) (__mpz_struct const *)(__e_acsl_var_14)); __e_acsl_var_16 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_10), (__mpz_struct const *)(__e_acsl_var_15)); - e_acsl_assert(! (__e_acsl_var_16 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_16 == 0,(char *)"Postcondition", (char *)"(X == Y+1)",34); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_11)); @@ -1018,7 +905,7 @@ void k(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); } - e_acsl_assert(! __e_acsl_var_7,(char *)"Precondition", + e_acsl_assert(__e_acsl_var_7,(char *)"Precondition", (char *)"(X == 1 ==> X == 0)",40); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_8),(long)3); __e_acsl_var_9 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), @@ -1049,7 +936,7 @@ void k(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_14)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_15)); } - e_acsl_assert(! __e_acsl_var_17,(char *)"Precondition", + e_acsl_assert(__e_acsl_var_17,(char *)"Precondition", (char *)"(X == 3 && Y == 2 ==> X == 3)",44); __e_acsl_var_18 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_8)); @@ -1088,7 +975,7 @@ void k(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_25)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_26)); } - e_acsl_assert(! __e_acsl_var_28,(char *)"Precondition", + e_acsl_assert(__e_acsl_var_28,(char *)"Precondition", (char *)"(X == 3 && Y == 2 ==> X+Y == 5)",45); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -1111,8 +998,8 @@ int l(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)2); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", - (char *)"(Y == 2)",51); + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion",(char *)"(Y == 2)", + 51); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); } @@ -1125,7 +1012,7 @@ int l(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)5); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_6 == 0,(char *)"Postcondition", (char *)"(X == 5)",49); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); @@ -1238,7 +1125,7 @@ void m(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_6)); } - e_acsl_assert(! __e_acsl_var_8,(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_8,(char *)"Postcondition", (char *)"(\\old(X == 7) ==> X == 95)",58); if (! __e_acsl_var_16) { __e_acsl_var_20 = 1; } else { @@ -1253,7 +1140,7 @@ void m(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_17)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_18)); } - e_acsl_assert(! __e_acsl_var_20,(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_20,(char *)"Postcondition", (char *)"(\\old(X == 5 && Y == 2) ==> X == 7)",62); if (! __e_acsl_var_28) { __e_acsl_var_35 = 1; } else { @@ -1278,7 +1165,7 @@ void m(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_32)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_33)); } - e_acsl_assert(! __e_acsl_var_35,(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_35,(char *)"Postcondition", (char *)"(\\old(X == 5 && Y == 2) ==> X == \\old(X)+Y)",63); return; } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.res.oracle index 91e761b53409fbb3128f1efe614d73fdba270c47..e508228f378c17bda8988240127060b3d4237cf2 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.res.oracle @@ -5,130 +5,131 @@ X ∈ {0} Y ∈ {2} [value] computing for function f <- main. - Called from PROJECT_FILE.i:401. + Called from PROJECT_FILE.i:402. [value] computing for function e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:235. + Called from PROJECT_FILE.i:236. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:231:[value] Function f: postcondition got status valid. +PROJECT_FILE.i:232:[value] Function f: postcondition got status valid. [value] Recording results for f [value] Done for function f [value] computing for function g <- main. - Called from PROJECT_FILE.i:402. + Called from PROJECT_FILE.i:403. [value] computing for function e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:245. + Called from PROJECT_FILE.i:246. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:239:[value] Function g: postcondition got status valid. PROJECT_FILE.i:240:[value] Function g: postcondition got status valid. +PROJECT_FILE.i:241:[value] Function g: postcondition got status valid. [value] Recording results for g [value] Done for function g [value] computing for function h <- main. - Called from PROJECT_FILE.i:403. -PROJECT_FILE.i:249:[value] Function h: precondition got status valid. + Called from PROJECT_FILE.i:404. +PROJECT_FILE.i:250:[value] Function h: precondition got status valid. [value] computing for function e_acsl_assert <- h <- main. - Called from PROJECT_FILE.i:252. + Called from PROJECT_FILE.i:253. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for h [value] Done for function h [value] computing for function i <- main. - Called from PROJECT_FILE.i:404. -PROJECT_FILE.i:257:[value] Function i: precondition got status valid. + Called from PROJECT_FILE.i:405. PROJECT_FILE.i:258:[value] Function i: precondition got status valid. +PROJECT_FILE.i:259:[value] Function i: precondition got status valid. [value] computing for function e_acsl_assert <- i <- main. - Called from PROJECT_FILE.i:261. + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- i <- main. - Called from PROJECT_FILE.i:262. + Called from PROJECT_FILE.i:263. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for i [value] Done for function i [value] computing for function j <- main. - Called from PROJECT_FILE.i:405. -PROJECT_FILE.i:268:[value] Function j, behavior b1: precondition got status valid. -PROJECT_FILE.i:272:[value] Function j, behavior b2: precondition got status valid. + Called from PROJECT_FILE.i:406. +PROJECT_FILE.i:269:[value] Function j, behavior b1: precondition got status valid. PROJECT_FILE.i:273:[value] Function j, behavior b2: precondition got status valid. +PROJECT_FILE.i:274:[value] Function j, behavior b2: precondition got status valid. [value] computing for function e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:280. + Called from PROJECT_FILE.i:281. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:281. + Called from PROJECT_FILE.i:282. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:283. + Called from PROJECT_FILE.i:284. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:285. + Called from PROJECT_FILE.i:286. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- j <- main. - Called from PROJECT_FILE.i:286. + Called from PROJECT_FILE.i:287. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:269:[value] Function j, behavior b1: postcondition got status valid. -PROJECT_FILE.i:274:[value] Function j, behavior b2: postcondition got status valid. +PROJECT_FILE.i:270:[value] Function j, behavior b1: postcondition got status valid. +PROJECT_FILE.i:275:[value] Function j, behavior b2: postcondition got status valid. [value] Recording results for j [value] Done for function j [value] computing for function k <- main. - Called from PROJECT_FILE.i:406. -PROJECT_FILE.i:293:[value] Function k, behavior b1: assumption got status invalid; precondition not evaluated. -PROJECT_FILE.i:298:[value] Function k, behavior b2: precondition got status valid. + Called from PROJECT_FILE.i:407. +PROJECT_FILE.i:294:[value] Function k, behavior b1: assumption got status invalid; precondition not evaluated. PROJECT_FILE.i:299:[value] Function k, behavior b2: precondition got status valid. +PROJECT_FILE.i:300:[value] Function k, behavior b2: precondition got status valid. [value] computing for function e_acsl_assert <- k <- main. - Called from PROJECT_FILE.i:313. + Called from PROJECT_FILE.i:314. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- k <- main. - Called from PROJECT_FILE.i:318. + Called from PROJECT_FILE.i:319. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- k <- main. - Called from PROJECT_FILE.i:324. + Called from PROJECT_FILE.i:325. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for k [value] Done for function k [value] computing for function l <- main. - Called from PROJECT_FILE.i:407. -PROJECT_FILE.i:335:[value] Assertion got status valid. + Called from PROJECT_FILE.i:408. +PROJECT_FILE.i:336:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- l <- main. - Called from PROJECT_FILE.i:336. + Called from PROJECT_FILE.i:337. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- l <- main. - Called from PROJECT_FILE.i:338. + Called from PROJECT_FILE.i:339. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:332:[value] Function l: postcondition got status valid. +PROJECT_FILE.i:333:[value] Function l: postcondition got status valid. [value] Recording results for l [value] Done for function l [value] computing for function m <- main. - Called from PROJECT_FILE.i:408. + Called from PROJECT_FILE.i:409. [value] computing for function e_acsl_assert <- m <- main. - Called from PROJECT_FILE.i:381. + Called from PROJECT_FILE.i:382. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- m <- main. - Called from PROJECT_FILE.i:385. + Called from PROJECT_FILE.i:386. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- m <- main. - Called from PROJECT_FILE.i:391. + Called from PROJECT_FILE.i:392. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:344:[value] Function m, behavior b1: assumes got status invalid; post-condition not evaluated. -PROJECT_FILE.i:349:[value] Function m, behavior b2: postcondition got status valid. +PROJECT_FILE.i:345:[value] Function m, behavior b1: assumes got status invalid; post-condition not evaluated. PROJECT_FILE.i:350:[value] Function m, behavior b2: postcondition got status valid. +PROJECT_FILE.i:351:[value] Function m, behavior b2: postcondition got status valid. [value] Recording results for m [value] Done for function m [value] Recording results for main @@ -164,9 +165,10 @@ PROJECT_FILE.i:350:[value] Function m, behavior b2: postcondition got status val extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -180,7 +182,7 @@ int Y = 2; void f(void) { X = 1; - e_acsl_assert(! (X == 1),(char *)"Postcondition",(char *)"(X == 1)",10); + e_acsl_assert(X == 1,(char *)"Postcondition",(char *)"(X == 1)",10); return; } @@ -189,15 +191,15 @@ void f(void) void g(void) { X = 2; - e_acsl_assert(! (X == 2),(char *)"Postcondition",(char *)"(X == 2)",14); - e_acsl_assert(! (Y == 2),(char *)"Postcondition",(char *)"(Y == 2)",15); + e_acsl_assert(X == 2,(char *)"Postcondition",(char *)"(X == 2)",14); + e_acsl_assert(Y == 2,(char *)"Postcondition",(char *)"(Y == 2)",15); return; } /*@ requires X ≡ 2; */ void h(void) { - e_acsl_assert(! (X == 2),(char *)"Precondition",(char *)"(X == 2)",19); + e_acsl_assert(X == 2,(char *)"Precondition",(char *)"(X == 2)",19); X ++; return; } @@ -206,8 +208,8 @@ void h(void) requires Y ≡ 2; */ void i(void) { - e_acsl_assert(! (X == 3),(char *)"Precondition",(char *)"(X == 3)",23); - e_acsl_assert(! (Y == 2),(char *)"Precondition",(char *)"(Y == 2)",24); + e_acsl_assert(X == 3,(char *)"Precondition",(char *)"(X == 3)",23); + e_acsl_assert(Y == 2,(char *)"Precondition",(char *)"(Y == 2)",24); X += Y; return; } @@ -225,13 +227,13 @@ void i(void) */ void j(void) { - e_acsl_assert(! (X == 5),(char *)"Precondition",(char *)"(X == 5)",29); - e_acsl_assert(! ((long long)X == (long long)3 + (long long)Y), + e_acsl_assert(X == 5,(char *)"Precondition",(char *)"(X == 5)",29); + e_acsl_assert((long long)X == (long long)3 + (long long)Y, (char *)"Precondition",(char *)"(X == 3+Y)",32); - e_acsl_assert(! (Y == 2),(char *)"Precondition",(char *)"(Y == 2)",33); + e_acsl_assert(Y == 2,(char *)"Precondition",(char *)"(Y == 2)",33); X = 3; - e_acsl_assert(! (X == 3),(char *)"Postcondition",(char *)"(X == 3)",30); - e_acsl_assert(! ((long long)X == (long long)Y + (long long)1), + e_acsl_assert(X == 3,(char *)"Postcondition",(char *)"(X == 3)",30); + e_acsl_assert((long long)X == (long long)Y + (long long)1, (char *)"Postcondition",(char *)"(X == Y+1)",34); return; } @@ -258,19 +260,19 @@ void k(void) int __e_acsl_var_5; if (! (X == 1)) { __e_acsl_var = 1; } else { __e_acsl_var = X == 0; } - e_acsl_assert(! __e_acsl_var,(char *)"Precondition", + e_acsl_assert(__e_acsl_var,(char *)"Precondition", (char *)"(X == 1 ==> X == 0)",40); if (X == 3) { __e_acsl_var_2 = Y == 2; } else { __e_acsl_var_2 = 0; } if (! __e_acsl_var_2) { __e_acsl_var_3 = 1; } else { __e_acsl_var_3 = X == 3; } - e_acsl_assert(! __e_acsl_var_3,(char *)"Precondition", + e_acsl_assert(__e_acsl_var_3,(char *)"Precondition", (char *)"(X == 3 && Y == 2 ==> X == 3)",44); if (X == 3) { __e_acsl_var_4 = Y == 2; } else { __e_acsl_var_4 = 0; } if (! __e_acsl_var_4) { __e_acsl_var_5 = 1; } else { __e_acsl_var_5 = (long long)X + (long long)Y == (long long)5; } - e_acsl_assert(! __e_acsl_var_5,(char *)"Precondition", + e_acsl_assert(__e_acsl_var_5,(char *)"Precondition", (char *)"(X == 3 && Y == 2 ==> X+Y == 5)",45); X += Y; } @@ -282,8 +284,8 @@ void k(void) int l(void) { /*@ assert Y ≡ 2; */ ; - e_acsl_assert(! (Y == 2),(char *)"Assertion",(char *)"(Y == 2)",51); - e_acsl_assert(! (X == 5),(char *)"Postcondition",(char *)"(X == 5)",49); + e_acsl_assert(Y == 2,(char *)"Assertion",(char *)"(Y == 2)",51); + e_acsl_assert(X == 5,(char *)"Postcondition",(char *)"(X == 5)",49); return (X); } @@ -326,17 +328,17 @@ void m(void) int __e_acsl_var_9; if (! __e_acsl_var) { __e_acsl_var_2 = 1; } else { __e_acsl_var_2 = X == 95; } - e_acsl_assert(! __e_acsl_var_2,(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_2,(char *)"Postcondition", (char *)"(\\old(X == 7) ==> X == 95)",58); if (! __e_acsl_var_4) { __e_acsl_var_5 = 1; } else { __e_acsl_var_5 = X == 7; } - e_acsl_assert(! __e_acsl_var_5,(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_5,(char *)"Postcondition", (char *)"(\\old(X == 5 && Y == 2) ==> X == 7)",62); if (! __e_acsl_var_7) { __e_acsl_var_9 = 1; } else { __e_acsl_var_9 = (long long)X == (long long)__e_acsl_var_8 + (long long)Y; } - e_acsl_assert(! __e_acsl_var_9,(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_9,(char *)"Postcondition", (char *)"(\\old(X == 5 && Y == 2) ==> X == \\old(X)+Y)",63); return; } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_addrOf.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_addrOf.c index 58fd2a2530a223fba8452631d7192074ecf9b58f..dec62651953f11de2ceb357b67c7b89b28c739e5 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_addrOf.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_addrOf.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -21,7 +22,7 @@ int main(void) int x; x = 0; /*@ assert &x ≡ &x; */ ; - e_acsl_assert(! (& x == & x),(char *)"Assertion",(char *)"(&x == &x)",9); + e_acsl_assert(& x == & x,(char *)"Assertion",(char *)"(&x == &x)",9); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_addrOf2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_addrOf2.c index 58fd2a2530a223fba8452631d7192074ecf9b58f..dec62651953f11de2ceb357b67c7b89b28c739e5 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_addrOf2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_addrOf2.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -21,7 +22,7 @@ int main(void) int x; x = 0; /*@ assert &x ≡ &x; */ ; - e_acsl_assert(! (& x == & x),(char *)"Assertion",(char *)"(&x == &x)",9); + e_acsl_assert(& x == & x,(char *)"Assertion",(char *)"(&x == &x)",9); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_arith.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_arith.c index b29b1a7d0aa9ed54de3fe6e9ee0c5d463140a69c..7e3519f47938542fc175c064b1f733844e7ecc62 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_arith.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_arith.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -23,27 +24,27 @@ int main(void) x = -3; y = 2; /*@ assert -3 ≡ x; */ ; - e_acsl_assert(! (-3 == x),(char *)"Assertion",(char *)"(-3 == x)",12); + e_acsl_assert(-3 == x,(char *)"Assertion",(char *)"(-3 == x)",12); /*@ assert x ≡ -3; */ ; - e_acsl_assert(! (x == -3),(char *)"Assertion",(char *)"(x == -3)",13); + e_acsl_assert(x == -3,(char *)"Assertion",(char *)"(x == -3)",13); /*@ assert 0 ≢ ~0; */ ; - e_acsl_assert(! (0 != ~ 0),(char *)"Assertion",(char *)"(0 != ~0)",14); + e_acsl_assert(0 != ~ 0,(char *)"Assertion",(char *)"(0 != ~0)",14); /*@ assert x+1 ≡ -2; */ ; - e_acsl_assert(! ((long long)x + (long long)1 == (long long)(-2)), + e_acsl_assert((long long)x + (long long)1 == (long long)(-2), (char *)"Assertion",(char *)"(x+1 == -2)",16); /*@ assert x-1 ≡ -4; */ ; - e_acsl_assert(! ((long long)x - (long long)1 == (long long)(-4)), + e_acsl_assert((long long)x - (long long)1 == (long long)(-4), (char *)"Assertion",(char *)"(x-1 == -4)",17); /*@ assert x*3 ≡ -9; */ ; - e_acsl_assert(! ((long long)x * (long long)3 == (long long)(-9)), + e_acsl_assert((long long)x * (long long)3 == (long long)(-9), (char *)"Assertion",(char *)"(x*3 == -9)",18); /*@ assert x/3 ≡ -1; */ ; { int __e_acsl_var; /*@ assert 3 ≢ 0; */ ; - e_acsl_assert(3 == 0,(char *)"Assertion",(char *)"(3 == 0)",19); + e_acsl_assert(! (3 == 0),(char *)"Assertion",(char *)"(3 == 0)",19); __e_acsl_var = x / 3; - e_acsl_assert(! (__e_acsl_var == -1),(char *)"Assertion", + e_acsl_assert(__e_acsl_var == -1,(char *)"Assertion", (char *)"(x/3 == -1)",19); } @@ -51,10 +52,10 @@ int main(void) { int __e_acsl_var_2; /*@ assert 0xfffffffffff ≢ 0; */ ; - e_acsl_assert(0xfffffffffff == (long long)0,(char *)"Assertion", + e_acsl_assert(! (0xfffffffffff == (long long)0),(char *)"Assertion", (char *)"(0xfffffffffff == 0)",20); __e_acsl_var_2 = (int)(0xfffffffffff / 0xfffffffffff); - e_acsl_assert(! (__e_acsl_var_2 == 1),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_2 == 1,(char *)"Assertion", (char *)"(0xfffffffffff/0xfffffffffff == 1)",20); } @@ -62,9 +63,9 @@ int main(void) { int __e_acsl_var_3; /*@ assert 2 ≢ 0; */ ; - e_acsl_assert(2 == 0,(char *)"Assertion",(char *)"(2 == 0)",21); + e_acsl_assert(! (2 == 0),(char *)"Assertion",(char *)"(2 == 0)",21); __e_acsl_var_3 = x % 2; - e_acsl_assert(! (__e_acsl_var_3 == -1),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_3 == -1,(char *)"Assertion", (char *)"(x%2 == -1)",21); } @@ -72,9 +73,9 @@ int main(void) { int __e_acsl_var_4; /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(-2 == 0,(char *)"Assertion",(char *)"(-2 == 0)",22); + e_acsl_assert(! (-2 == 0),(char *)"Assertion",(char *)"(-2 == 0)",22); __e_acsl_var_4 = -3 % -2; - e_acsl_assert(! (__e_acsl_var_4 == -1),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4 == -1,(char *)"Assertion", (char *)"(-3%-2 == -1)",22); } @@ -82,31 +83,31 @@ int main(void) { int __e_acsl_var_5; /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(-2 == 0,(char *)"Assertion",(char *)"(-2 == 0)",23); + e_acsl_assert(! (-2 == 0),(char *)"Assertion",(char *)"(-2 == 0)",23); __e_acsl_var_5 = 3 % -2; - e_acsl_assert(! (__e_acsl_var_5 == 1),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_5 == 1,(char *)"Assertion", (char *)"(3%-2 == 1)",23); } /*@ assert ((x*2+(3+y))-4)+(x-y) ≡ -10; */ ; - e_acsl_assert(! ((((long long)x * (long long)2 + ((long long)3 + (long long)y)) - (long long)4) + ( - (long long)x - (long long)y) == (long long)(-10)), + e_acsl_assert((((long long)x * (long long)2 + ((long long)3 + (long long)y)) - (long long)4) + ( + (long long)x - (long long)y) == (long long)(-10), (char *)"Assertion",(char *)"(((x*2+(3+y))-4)+(x-y) == -10)", 25); /*@ assert (0≡1) ≡ !(0≡0); */ ; - e_acsl_assert(! ((0 == 1) == ! (0 == 0)),(char *)"Assertion", + e_acsl_assert((0 == 1) == ! (0 == 0),(char *)"Assertion", (char *)"((0==1) == !(0==0))",27); /*@ assert (0≤-1) ≡ (0>0); */ ; - e_acsl_assert(! ((0 <= -1) == (0 > 0)),(char *)"Assertion", + e_acsl_assert((0 <= -1) == (0 > 0),(char *)"Assertion", (char *)"((0<=-1) == (0>0))",28); /*@ assert (0≥-1) ≡ (0≤0); */ ; - e_acsl_assert(! ((0 >= -1) == (0 <= 0)),(char *)"Assertion", + e_acsl_assert((0 >= -1) == (0 <= 0),(char *)"Assertion", (char *)"((0>=-1) == (0<=0))",29); /*@ assert (0≢1) ≡ !(0≢0); */ ; - e_acsl_assert(! ((0 != 1) == ! (0 != 0)),(char *)"Assertion", + e_acsl_assert((0 != 1) == ! (0 != 0),(char *)"Assertion", (char *)"((0!=1) == !(0!=0))",30); /*@ assert (0≢0) ≡ !(1≢0); */ ; - e_acsl_assert(! ((0 != 0) == ! (1 != 0)),(char *)"Assertion", + e_acsl_assert((0 != 0) == ! (1 != 0),(char *)"Assertion", (char *)"((0!=0) == !(1!=0))",32); __retres = 0; return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_arith2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_arith2.c index 0b9dc4a37ded6c9222b143a71610cda37534e148..b91ee4c1fa656207487ebafd34d204fcf85529c6 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_arith2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_arith2.c @@ -81,9 +81,10 @@ extern int __gmpz_com(__mpz_struct * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -111,7 +112,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_3),(long)x); __e_acsl_var_4 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_2), (__mpz_struct const *)(__e_acsl_var_3)); - e_acsl_assert(! (__e_acsl_var_4 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4 == 0,(char *)"Assertion", (char *)"(-3 == x)",12); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -131,7 +132,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_6)); __e_acsl_var_8 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_5), (__mpz_struct const *)(__e_acsl_var_7)); - e_acsl_assert(! (__e_acsl_var_8 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_8 == 0,(char *)"Assertion", (char *)"(x == -3)",13); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_6)); @@ -149,7 +150,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_9)); __e_acsl_var_11 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_9), (__mpz_struct const *)(__e_acsl_var_10)); - e_acsl_assert(! (__e_acsl_var_11 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_11 != 0,(char *)"Assertion", (char *)"(0 != ~0)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_9)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); @@ -175,7 +176,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_15)); __e_acsl_var_17 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_14), (__mpz_struct const *)(__e_acsl_var_16)); - e_acsl_assert(! (__e_acsl_var_17 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_17 == 0,(char *)"Assertion", (char *)"(x+1 == -2)",16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_12)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_13)); @@ -204,7 +205,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_21)); __e_acsl_var_23 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_20), (__mpz_struct const *)(__e_acsl_var_22)); - e_acsl_assert(! (__e_acsl_var_23 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_23 == 0,(char *)"Assertion", (char *)"(x-1 == -4)",17); __gmpz_clear((__mpz_struct *)(__e_acsl_var_18)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_19)); @@ -233,7 +234,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_27)); __e_acsl_var_29 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_26), (__mpz_struct const *)(__e_acsl_var_28)); - e_acsl_assert(! (__e_acsl_var_29 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_29 == 0,(char *)"Assertion", (char *)"(x*3 == -9)",18); __gmpz_clear((__mpz_struct *)(__e_acsl_var_24)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_25)); @@ -259,7 +260,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_32)); __gmpz_init((__mpz_struct *)(__e_acsl_var_34)); /*@ assert 3 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_33 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_33 == 0),(char *)"Assertion", (char *)"(3 == 0)",19); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_30), @@ -270,7 +271,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_35)); __e_acsl_var_37 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_36)); - e_acsl_assert(! (__e_acsl_var_37 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_37 == 0,(char *)"Assertion", (char *)"(x/3 == -1)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_30)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_31)); @@ -295,7 +296,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_39)); __gmpz_init((__mpz_struct *)(__e_acsl_var_41)); /*@ assert 0xfffffffffff ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_40 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_40 == 0),(char *)"Assertion", (char *)"(0xfffffffffff == 0)",20); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_41), (__mpz_struct const *)(__e_acsl_var_38), @@ -303,7 +304,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_42),(long)1); __e_acsl_var_43 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_41), (__mpz_struct const *)(__e_acsl_var_42)); - e_acsl_assert(! (__e_acsl_var_43 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_43 == 0,(char *)"Assertion", (char *)"(0xfffffffffff/0xfffffffffff == 1)",20); __gmpz_clear((__mpz_struct *)(__e_acsl_var_38)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_39)); @@ -328,7 +329,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_46)); __gmpz_init((__mpz_struct *)(__e_acsl_var_48)); /*@ assert 2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_47 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_47 == 0),(char *)"Assertion", (char *)"(2 == 0)",21); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_48), (__mpz_struct const *)(__e_acsl_var_44), @@ -339,7 +340,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_49)); __e_acsl_var_51 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_48), (__mpz_struct const *)(__e_acsl_var_50)); - e_acsl_assert(! (__e_acsl_var_51 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_51 == 0,(char *)"Assertion", (char *)"(x%2 == -1)",21); __gmpz_clear((__mpz_struct *)(__e_acsl_var_44)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_45)); @@ -374,7 +375,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_56)); __gmpz_init((__mpz_struct *)(__e_acsl_var_58)); /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_57 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_57 == 0),(char *)"Assertion", (char *)"(-2 == 0)",22); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_58), (__mpz_struct const *)(__e_acsl_var_53), @@ -385,7 +386,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_59)); __e_acsl_var_61 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_58), (__mpz_struct const *)(__e_acsl_var_60)); - e_acsl_assert(! (__e_acsl_var_61 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_61 == 0,(char *)"Assertion", (char *)"(-3%-2 == -1)",22); __gmpz_clear((__mpz_struct *)(__e_acsl_var_52)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_53)); @@ -417,7 +418,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_65)); __gmpz_init((__mpz_struct *)(__e_acsl_var_67)); /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_66 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_66 == 0),(char *)"Assertion", (char *)"(-2 == 0)",23); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_67), (__mpz_struct const *)(__e_acsl_var_62), @@ -425,7 +426,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_68),(long)1); __e_acsl_var_69 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_67), (__mpz_struct const *)(__e_acsl_var_68)); - e_acsl_assert(! (__e_acsl_var_69 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_69 == 0,(char *)"Assertion", (char *)"(3%-2 == 1)",23); __gmpz_clear((__mpz_struct *)(__e_acsl_var_62)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_63)); @@ -486,7 +487,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_81)); __e_acsl_var_83 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_80), (__mpz_struct const *)(__e_acsl_var_82)); - e_acsl_assert(! (__e_acsl_var_83 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_83 == 0,(char *)"Assertion", (char *)"(((x*2+(3+y))-4)+(x-y) == -10)",25); __gmpz_clear((__mpz_struct *)(__e_acsl_var_70)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_71)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_array.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_array.c index dec8a0871ee72bc72981c57efade9348ffc98443..b83c4643cab6945777fcc9939176ec5ac17d9cb0 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_array.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_array.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -37,10 +38,10 @@ int main(void) } /*@ assert T1[0] ≡ T2[0]; */ ; - e_acsl_assert(! (T1[0] == T2[0]),(char *)"Assertion", + e_acsl_assert(T1[0] == T2[0],(char *)"Assertion", (char *)"(T1[0] == T2[0])",14); /*@ assert T1[1] ≢ T2[1]; */ ; - e_acsl_assert(! (T1[1] != T2[1]),(char *)"Assertion", + e_acsl_assert(T1[1] != T2[1],(char *)"Assertion", (char *)"(T1[1] != T2[1])",15); __retres = 0; return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_array2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_array2.c index 6448fbb710da6b381a9e7a53c19cc4494585c759..579540353fa5f7cf9f0ba0f4622bbef6274c0539 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_array2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_array2.c @@ -24,9 +24,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -64,7 +65,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)T2[0]); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion", (char *)"(T1[0] == T2[0])",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -79,7 +80,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)T2[1]); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_6 != 0,(char *)"Assertion", (char *)"(T1[1] != T2[1])",15); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at.c index 693c5486e964c59377cc0ad603442376a8f70f70..726b363c921b47a65805d5c47b75610f22a45155 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -32,21 +33,21 @@ void f(void) __e_acsl_var_2 = A; A = 2; /*@ assert \at(A,Pre) ≡ 0; */ ; - e_acsl_assert(! (__e_acsl_var == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var == 0,(char *)"Assertion", (char *)"(\\at(A,Pre) == 0)",13); /*@ assert \at(A,F) ≡ 1; */ ; - e_acsl_assert(! (__e_acsl_var_2 == 1),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_2 == 1,(char *)"Assertion", (char *)"(\\at(A,F) == 1)",14); /*@ assert \at(A,Here) ≡ 2; */ ; __e_acsl_var_3 = A; - e_acsl_assert(! (__e_acsl_var_3 == 2),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_3 == 2,(char *)"Assertion", (char *)"(\\at(A,Here) == 2)",15); /*@ assert \at(\at(A,Pre),F) ≡ 0; */ ; - e_acsl_assert(! (__e_acsl_var_5 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_5 == 0,(char *)"Assertion", (char *)"(\\at(\\at(A,Pre),F) == 0)",16); A = 3; __e_acsl_var_6 = A; - e_acsl_assert(! (__e_acsl_var_6 == 3),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_6 == 3,(char *)"Postcondition", (char *)"(\\at(A,Post) == 3)",9); return; } @@ -68,12 +69,12 @@ void g(int *p, int *q) L2: __e_acsl_var_2 = *(p + __e_acsl_var); A = 4; /*@ assert \at(*(p+\at(*q,L1)),L2) ≡ 2; */ ; - e_acsl_assert(! (__e_acsl_var_2 == 2),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_2 == 2,(char *)"Assertion", (char *)"(\\at(*(p+\\at(*q,L1)),L2) == 2)",32); L3: /*@ assert \at(*(p+\at(*q,L1)),Here) ≡ 2; */ ; __e_acsl_var_4 = *(p + __e_acsl_var_3); - e_acsl_assert(! (__e_acsl_var_4 == 2),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4 == 2,(char *)"Assertion", (char *)"(\\at(*(p+\\at(*q,L1)),Here) == 2)",34); return; } @@ -91,18 +92,18 @@ int main(void) __e_acsl_var_2 = (long long)x + (long long)1; __e_acsl_var = x; /*@ assert x ≡ 0; */ ; - e_acsl_assert(! (x == 0),(char *)"Assertion",(char *)"(x == 0)",45); + e_acsl_assert(x == 0,(char *)"Assertion",(char *)"(x == 0)",45); x = 1; x = 2; f(); /*@ assert \at(x,L) ≡ 0; */ ; - e_acsl_assert(! (__e_acsl_var == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var == 0,(char *)"Assertion", (char *)"(\\at(x,L) == 0)",50); /*@ assert \at(x+1,L) ≡ 1; */ ; - e_acsl_assert(! (__e_acsl_var_2 == (long long)1),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_2 == (long long)1,(char *)"Assertion", (char *)"(\\at(x+1,L) == 1)",51); /*@ assert \at(x,L)+1 ≡ 1; */ ; - e_acsl_assert(! ((long long)__e_acsl_var_3 + (long long)1 == (long long)1), + e_acsl_assert((long long)__e_acsl_var_3 + (long long)1 == (long long)1, (char *)"Assertion",(char *)"(\\at(x,L)+1 == 1)",52); g(t,& x); __retres = 0; diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at2.c index 0b9dc4a37ded6c9222b143a71610cda37534e148..b91ee4c1fa656207487ebafd34d204fcf85529c6 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at2.c @@ -81,9 +81,10 @@ extern int __gmpz_com(__mpz_struct * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -111,7 +112,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_3),(long)x); __e_acsl_var_4 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_2), (__mpz_struct const *)(__e_acsl_var_3)); - e_acsl_assert(! (__e_acsl_var_4 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4 == 0,(char *)"Assertion", (char *)"(-3 == x)",12); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -131,7 +132,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_6)); __e_acsl_var_8 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_5), (__mpz_struct const *)(__e_acsl_var_7)); - e_acsl_assert(! (__e_acsl_var_8 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_8 == 0,(char *)"Assertion", (char *)"(x == -3)",13); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_6)); @@ -149,7 +150,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_9)); __e_acsl_var_11 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_9), (__mpz_struct const *)(__e_acsl_var_10)); - e_acsl_assert(! (__e_acsl_var_11 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_11 != 0,(char *)"Assertion", (char *)"(0 != ~0)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_9)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); @@ -175,7 +176,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_15)); __e_acsl_var_17 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_14), (__mpz_struct const *)(__e_acsl_var_16)); - e_acsl_assert(! (__e_acsl_var_17 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_17 == 0,(char *)"Assertion", (char *)"(x+1 == -2)",16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_12)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_13)); @@ -204,7 +205,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_21)); __e_acsl_var_23 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_20), (__mpz_struct const *)(__e_acsl_var_22)); - e_acsl_assert(! (__e_acsl_var_23 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_23 == 0,(char *)"Assertion", (char *)"(x-1 == -4)",17); __gmpz_clear((__mpz_struct *)(__e_acsl_var_18)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_19)); @@ -233,7 +234,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_27)); __e_acsl_var_29 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_26), (__mpz_struct const *)(__e_acsl_var_28)); - e_acsl_assert(! (__e_acsl_var_29 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_29 == 0,(char *)"Assertion", (char *)"(x*3 == -9)",18); __gmpz_clear((__mpz_struct *)(__e_acsl_var_24)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_25)); @@ -259,7 +260,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_32)); __gmpz_init((__mpz_struct *)(__e_acsl_var_34)); /*@ assert 3 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_33 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_33 == 0),(char *)"Assertion", (char *)"(3 == 0)",19); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_30), @@ -270,7 +271,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_35)); __e_acsl_var_37 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_36)); - e_acsl_assert(! (__e_acsl_var_37 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_37 == 0,(char *)"Assertion", (char *)"(x/3 == -1)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_30)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_31)); @@ -295,7 +296,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_39)); __gmpz_init((__mpz_struct *)(__e_acsl_var_41)); /*@ assert 0xfffffffffff ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_40 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_40 == 0),(char *)"Assertion", (char *)"(0xfffffffffff == 0)",20); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_41), (__mpz_struct const *)(__e_acsl_var_38), @@ -303,7 +304,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_42),(long)1); __e_acsl_var_43 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_41), (__mpz_struct const *)(__e_acsl_var_42)); - e_acsl_assert(! (__e_acsl_var_43 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_43 == 0,(char *)"Assertion", (char *)"(0xfffffffffff/0xfffffffffff == 1)",20); __gmpz_clear((__mpz_struct *)(__e_acsl_var_38)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_39)); @@ -328,7 +329,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_46)); __gmpz_init((__mpz_struct *)(__e_acsl_var_48)); /*@ assert 2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_47 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_47 == 0),(char *)"Assertion", (char *)"(2 == 0)",21); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_48), (__mpz_struct const *)(__e_acsl_var_44), @@ -339,7 +340,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_49)); __e_acsl_var_51 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_48), (__mpz_struct const *)(__e_acsl_var_50)); - e_acsl_assert(! (__e_acsl_var_51 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_51 == 0,(char *)"Assertion", (char *)"(x%2 == -1)",21); __gmpz_clear((__mpz_struct *)(__e_acsl_var_44)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_45)); @@ -374,7 +375,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_56)); __gmpz_init((__mpz_struct *)(__e_acsl_var_58)); /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_57 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_57 == 0),(char *)"Assertion", (char *)"(-2 == 0)",22); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_58), (__mpz_struct const *)(__e_acsl_var_53), @@ -385,7 +386,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_59)); __e_acsl_var_61 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_58), (__mpz_struct const *)(__e_acsl_var_60)); - e_acsl_assert(! (__e_acsl_var_61 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_61 == 0,(char *)"Assertion", (char *)"(-3%-2 == -1)",22); __gmpz_clear((__mpz_struct *)(__e_acsl_var_52)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_53)); @@ -417,7 +418,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_65)); __gmpz_init((__mpz_struct *)(__e_acsl_var_67)); /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_66 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_66 == 0),(char *)"Assertion", (char *)"(-2 == 0)",23); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_67), (__mpz_struct const *)(__e_acsl_var_62), @@ -425,7 +426,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_68),(long)1); __e_acsl_var_69 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_67), (__mpz_struct const *)(__e_acsl_var_68)); - e_acsl_assert(! (__e_acsl_var_69 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_69 == 0,(char *)"Assertion", (char *)"(3%-2 == 1)",23); __gmpz_clear((__mpz_struct *)(__e_acsl_var_62)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_63)); @@ -486,7 +487,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_81)); __e_acsl_var_83 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_80), (__mpz_struct const *)(__e_acsl_var_82)); - e_acsl_assert(! (__e_acsl_var_83 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_83 == 0,(char *)"Assertion", (char *)"(((x*2+(3+y))-4)+(x-y) == -10)",25); __gmpz_clear((__mpz_struct *)(__e_acsl_var_70)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_71)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_cast.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_cast.c index f574ab58f5b11a372f6bcca0664039f74874ff3f..a073e25196f10bcab6a66613fa8a794270627d03 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_cast.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_cast.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -23,21 +24,19 @@ int main(void) x = (long)0; y = 0; /*@ assert (int)x ≡ y; */ ; - e_acsl_assert(! ((int)x == y),(char *)"Assertion",(char *)"((int)x == y)", - 11); + e_acsl_assert((int)x == y,(char *)"Assertion",(char *)"((int)x == y)",11); /*@ assert x ≡ (long)y; */ ; - e_acsl_assert(! (x == (long)y),(char *)"Assertion", - (char *)"(x == (long)y)",12); + e_acsl_assert(x == (long)y,(char *)"Assertion",(char *)"(x == (long)y)",12); /*@ assert y ≡ (int)0; */ ; - e_acsl_assert(! (y == 0),(char *)"Assertion",(char *)"(y == (int)0)",14); + e_acsl_assert(y == 0,(char *)"Assertion",(char *)"(y == (int)0)",14); /*@ assert (unsigned int)y ≡ (unsigned int)0; */ ; - e_acsl_assert(! ((unsigned int)y == (unsigned int)0),(char *)"Assertion", + e_acsl_assert((unsigned int)y == (unsigned int)0,(char *)"Assertion", (char *)"((unsigned int)y == (unsigned int)0)",15); /*@ assert y ≢ (int)0xfffffffffffffff; */ ; - e_acsl_assert(! (y != (int)0xfffffffffffffff),(char *)"Assertion", + e_acsl_assert(y != (int)0xfffffffffffffff,(char *)"Assertion", (char *)"(y != (int)0xfffffffffffffff)",18); /*@ assert (unsigned int)y ≢ (unsigned int)0xfffffffffffffff; */ ; - e_acsl_assert(! ((unsigned int)y != (unsigned int)0xfffffffffffffff), + e_acsl_assert((unsigned int)y != (unsigned int)0xfffffffffffffff, (char *)"Assertion", (char *)"((unsigned int)y != (unsigned int)0xfffffffffffffff)", 19); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_cast2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_cast2.c index 25c47c0d7f8c1b70350c68fd1e87c41c37389e65..1f191ec9c6f02aec909a563635591cfb38cc33e6 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_cast2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_cast2.c @@ -35,9 +35,10 @@ extern unsigned long __gmpz_get_ui(__mpz_struct const * /*[1]*/ z); extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -61,7 +62,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)y); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion", (char *)"((int)x == y)",11); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -76,7 +77,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)y); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_6 == 0,(char *)"Assertion", (char *)"(x == (long)y)",12); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); @@ -91,7 +92,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_8),(long)0); __e_acsl_var_9 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_7), (__mpz_struct const *)(__e_acsl_var_8)); - e_acsl_assert(! (__e_acsl_var_9 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_9 == 0,(char *)"Assertion", (char *)"(y == (int)0)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_7)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_8)); @@ -108,7 +109,7 @@ int main(void) (unsigned long)((unsigned int)0)); __e_acsl_var_12 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_10), (__mpz_struct const *)(__e_acsl_var_11)); - e_acsl_assert(! (__e_acsl_var_12 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_12 == 0,(char *)"Assertion", (char *)"((unsigned int)y == (unsigned int)0)",15); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_11)); @@ -129,7 +130,7 @@ int main(void) (long)((int)__e_acsl_var_15)); __e_acsl_var_17 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_13), (__mpz_struct const *)(__e_acsl_var_16)); - e_acsl_assert(! (__e_acsl_var_17 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_17 != 0,(char *)"Assertion", (char *)"(y != (int)0xfffffffffffffff)",18); __gmpz_clear((__mpz_struct *)(__e_acsl_var_13)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_14)); @@ -152,7 +153,7 @@ int main(void) (unsigned long)((unsigned int)__e_acsl_var_20)); __e_acsl_var_22 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_18), (__mpz_struct const *)(__e_acsl_var_21)); - e_acsl_assert(! (__e_acsl_var_22 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_22 != 0,(char *)"Assertion", (char *)"((unsigned int)y != (unsigned int)0xfffffffffffffff)", 19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_18)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_comparison.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_comparison.c index 548565d106ded3a9f32b2aba8c0156f480eb3878..dd4723386a5067b4251a3d60c3dfa55f341d249f 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_comparison.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_comparison.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -24,45 +25,44 @@ int main(void) x = 0; y = 1; /*@ assert x < y; */ ; - e_acsl_assert(! (x < y),(char *)"Assertion",(char *)"(x < y)",9); + e_acsl_assert(x < y,(char *)"Assertion",(char *)"(x < y)",9); /*@ assert y > x; */ ; - e_acsl_assert(! (y > x),(char *)"Assertion",(char *)"(y > x)",10); + e_acsl_assert(y > x,(char *)"Assertion",(char *)"(y > x)",10); /*@ assert x ≤ 0; */ ; - e_acsl_assert(! (x <= 0),(char *)"Assertion",(char *)"(x <= 0)",11); + e_acsl_assert(x <= 0,(char *)"Assertion",(char *)"(x <= 0)",11); /*@ assert y ≥ 1; */ ; - e_acsl_assert(! (y >= 1),(char *)"Assertion",(char *)"(y >= 1)",12); + e_acsl_assert(y >= 1,(char *)"Assertion",(char *)"(y >= 1)",12); s = (char *)"toto"; /*@ assert s ≡ s; */ ; - e_acsl_assert(! (s == s),(char *)"Assertion",(char *)"(s == s)",14); + e_acsl_assert(s == s,(char *)"Assertion",(char *)"(s == s)",14); /*@ assert "toto" ≢ "titi"; */ ; - e_acsl_assert(! ("toto" != "titi"),(char *)"Assertion", + e_acsl_assert("toto" != "titi",(char *)"Assertion", (char *)"(\"toto\" != \"titi\")",15); /*@ assert 5 < 18; */ ; - e_acsl_assert(! (5 < 18),(char *)"Assertion",(char *)"(5 < 18)",16); + e_acsl_assert(5 < 18,(char *)"Assertion",(char *)"(5 < 18)",16); /*@ assert 32 > 3; */ ; - e_acsl_assert(! (32 > 3),(char *)"Assertion",(char *)"(32 > 3)",17); + e_acsl_assert(32 > 3,(char *)"Assertion",(char *)"(32 > 3)",17); /*@ assert 12 ≤ 13; */ ; - e_acsl_assert(! (12 <= 13),(char *)"Assertion",(char *)"(12 <= 13)",18); + e_acsl_assert(12 <= 13,(char *)"Assertion",(char *)"(12 <= 13)",18); /*@ assert 123 ≥ 12; */ ; - e_acsl_assert(! (123 >= 12),(char *)"Assertion",(char *)"(123 >= 12)",19); + e_acsl_assert(123 >= 12,(char *)"Assertion",(char *)"(123 >= 12)",19); /*@ assert 0xff ≡ 0xff; */ ; - e_acsl_assert(! (0xff == 0xff),(char *)"Assertion", - (char *)"(0xff == 0xff)",20); + e_acsl_assert(0xff == 0xff,(char *)"Assertion",(char *)"(0xff == 0xff)",20); /*@ assert 1 ≢ 2; */ ; - e_acsl_assert(! (1 != 2),(char *)"Assertion",(char *)"(1 != 2)",21); + e_acsl_assert(1 != 2,(char *)"Assertion",(char *)"(1 != 2)",21); /*@ assert -5 < 18; */ ; - e_acsl_assert(! (-5 < 18),(char *)"Assertion",(char *)"(-5 < 18)",23); + e_acsl_assert(-5 < 18,(char *)"Assertion",(char *)"(-5 < 18)",23); /*@ assert 32 > -3; */ ; - e_acsl_assert(! (32 > -3),(char *)"Assertion",(char *)"(32 > -3)",24); + e_acsl_assert(32 > -3,(char *)"Assertion",(char *)"(32 > -3)",24); /*@ assert -12 ≤ 13; */ ; - e_acsl_assert(! (-12 <= 13),(char *)"Assertion",(char *)"(-12 <= 13)",25); + e_acsl_assert(-12 <= 13,(char *)"Assertion",(char *)"(-12 <= 13)",25); /*@ assert 123 ≥ -12; */ ; - e_acsl_assert(! (123 >= -12),(char *)"Assertion",(char *)"(123 >= -12)",26); + e_acsl_assert(123 >= -12,(char *)"Assertion",(char *)"(123 >= -12)",26); /*@ assert -0xff ≡ -0xff; */ ; - e_acsl_assert(! (-0xff == -0xff),(char *)"Assertion", + e_acsl_assert(-0xff == -0xff,(char *)"Assertion", (char *)"(-0xff == -0xff)",27); /*@ assert 1 ≢ -2; */ ; - e_acsl_assert(! (1 != -2),(char *)"Assertion",(char *)"(1 != -2)",28); + e_acsl_assert(1 != -2,(char *)"Assertion",(char *)"(1 != -2)",28); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_comparison2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_comparison2.c index e7ce093a493313d8bb9b9c54b65f9cff43ef9e9d..c788f41e1b4260ad7c865033b1d7cc97de6e0194 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_comparison2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_comparison2.c @@ -32,9 +32,10 @@ extern void __gmpz_neg(__mpz_struct * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -59,8 +60,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)y); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 < 0),(char *)"Assertion", - (char *)"(x < y)",9); + e_acsl_assert(__e_acsl_var_3 < 0,(char *)"Assertion",(char *)"(x < y)",9); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); } @@ -74,8 +74,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)x); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 > 0),(char *)"Assertion", - (char *)"(y > x)",10); + e_acsl_assert(__e_acsl_var_6 > 0,(char *)"Assertion",(char *)"(y > x)", + 10); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); } @@ -89,8 +89,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_8),(long)0); __e_acsl_var_9 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_7), (__mpz_struct const *)(__e_acsl_var_8)); - e_acsl_assert(! (__e_acsl_var_9 <= 0),(char *)"Assertion", - (char *)"(x <= 0)",11); + e_acsl_assert(__e_acsl_var_9 <= 0,(char *)"Assertion",(char *)"(x <= 0)", + 11); __gmpz_clear((__mpz_struct *)(__e_acsl_var_7)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_8)); } @@ -104,7 +104,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_11),(long)1); __e_acsl_var_12 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_10), (__mpz_struct const *)(__e_acsl_var_11)); - e_acsl_assert(! (__e_acsl_var_12 >= 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_12 >= 0,(char *)"Assertion", (char *)"(y >= 1)",12); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_11)); @@ -112,9 +112,9 @@ int main(void) s = (char *)"toto"; /*@ assert s ≡ s; */ ; - e_acsl_assert(! (s == s),(char *)"Assertion",(char *)"(s == s)",14); + e_acsl_assert(s == s,(char *)"Assertion",(char *)"(s == s)",14); /*@ assert "toto" ≢ "titi"; */ ; - e_acsl_assert(! ("toto" != "titi"),(char *)"Assertion", + e_acsl_assert("toto" != "titi",(char *)"Assertion", (char *)"(\"toto\" != \"titi\")",15); /*@ assert 5 < 18; */ ; { @@ -125,8 +125,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_14),(long)18); __e_acsl_var_15 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_13), (__mpz_struct const *)(__e_acsl_var_14)); - e_acsl_assert(! (__e_acsl_var_15 < 0),(char *)"Assertion", - (char *)"(5 < 18)",16); + e_acsl_assert(__e_acsl_var_15 < 0,(char *)"Assertion",(char *)"(5 < 18)", + 16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_13)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_14)); } @@ -140,8 +140,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_17),(long)3); __e_acsl_var_18 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_16), (__mpz_struct const *)(__e_acsl_var_17)); - e_acsl_assert(! (__e_acsl_var_18 > 0),(char *)"Assertion", - (char *)"(32 > 3)",17); + e_acsl_assert(__e_acsl_var_18 > 0,(char *)"Assertion",(char *)"(32 > 3)", + 17); __gmpz_clear((__mpz_struct *)(__e_acsl_var_16)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_17)); } @@ -155,7 +155,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_20),(long)13); __e_acsl_var_21 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_19), (__mpz_struct const *)(__e_acsl_var_20)); - e_acsl_assert(! (__e_acsl_var_21 <= 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_21 <= 0,(char *)"Assertion", (char *)"(12 <= 13)",18); __gmpz_clear((__mpz_struct *)(__e_acsl_var_19)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_20)); @@ -170,7 +170,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_23),(long)12); __e_acsl_var_24 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_22), (__mpz_struct const *)(__e_acsl_var_23)); - e_acsl_assert(! (__e_acsl_var_24 >= 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_24 >= 0,(char *)"Assertion", (char *)"(123 >= 12)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_22)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_23)); @@ -183,7 +183,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_25),(long)0xff); __e_acsl_var_26 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_25), (__mpz_struct const *)(__e_acsl_var_25)); - e_acsl_assert(! (__e_acsl_var_26 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_26 == 0,(char *)"Assertion", (char *)"(0xff == 0xff)",20); __gmpz_clear((__mpz_struct *)(__e_acsl_var_25)); } @@ -197,7 +197,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_28),(long)2); __e_acsl_var_29 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_27), (__mpz_struct const *)(__e_acsl_var_28)); - e_acsl_assert(! (__e_acsl_var_29 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_29 != 0,(char *)"Assertion", (char *)"(1 != 2)",21); __gmpz_clear((__mpz_struct *)(__e_acsl_var_27)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_28)); @@ -216,7 +216,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_32),(long)18); __e_acsl_var_33 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_31), (__mpz_struct const *)(__e_acsl_var_32)); - e_acsl_assert(! (__e_acsl_var_33 < 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_33 < 0,(char *)"Assertion", (char *)"(-5 < 18)",23); __gmpz_clear((__mpz_struct *)(__e_acsl_var_30)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_31)); @@ -236,7 +236,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_35)); __e_acsl_var_37 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_36)); - e_acsl_assert(! (__e_acsl_var_37 > 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_37 > 0,(char *)"Assertion", (char *)"(32 > -3)",24); __gmpz_clear((__mpz_struct *)(__e_acsl_var_34)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_35)); @@ -256,7 +256,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_40),(long)13); __e_acsl_var_41 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_39), (__mpz_struct const *)(__e_acsl_var_40)); - e_acsl_assert(! (__e_acsl_var_41 <= 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_41 <= 0,(char *)"Assertion", (char *)"(-12 <= 13)",25); __gmpz_clear((__mpz_struct *)(__e_acsl_var_38)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_39)); @@ -276,7 +276,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_43)); __e_acsl_var_45 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_42), (__mpz_struct const *)(__e_acsl_var_44)); - e_acsl_assert(! (__e_acsl_var_45 >= 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_45 >= 0,(char *)"Assertion", (char *)"(123 >= -12)",26); __gmpz_clear((__mpz_struct *)(__e_acsl_var_42)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_43)); @@ -294,7 +294,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_46)); __e_acsl_var_48 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_47), (__mpz_struct const *)(__e_acsl_var_47)); - e_acsl_assert(! (__e_acsl_var_48 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_48 == 0,(char *)"Assertion", (char *)"(-0xff == -0xff)",27); __gmpz_clear((__mpz_struct *)(__e_acsl_var_46)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_47)); @@ -313,7 +313,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_50)); __e_acsl_var_52 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_49), (__mpz_struct const *)(__e_acsl_var_51)); - e_acsl_assert(! (__e_acsl_var_52 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_52 != 0,(char *)"Assertion", (char *)"(1 != -2)",28); __gmpz_clear((__mpz_struct *)(__e_acsl_var_49)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_50)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_false.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_false.c index cca4f5b4275d22ce12db903cbe1ff5686c3f91e0..e0ed9f6404987d5108a3607de0a22ef2007d2b14 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_false.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_false.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -22,7 +23,7 @@ int main(void) x = 0; if (x) { /*@ assert \false; */ ; - e_acsl_assert(1,(char *)"Assertion",(char *)"(\\false)",8); + e_acsl_assert(0,(char *)"Assertion",(char *)"(\\false)",8); } __retres = 0; return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_false2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_false2.c index cca4f5b4275d22ce12db903cbe1ff5686c3f91e0..e0ed9f6404987d5108a3607de0a22ef2007d2b14 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_false2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_false2.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -22,7 +23,7 @@ int main(void) x = 0; if (x) { /*@ assert \false; */ ; - e_acsl_assert(1,(char *)"Assertion",(char *)"(\\false)",8); + e_acsl_assert(0,(char *)"Assertion",(char *)"(\\false)",8); } __retres = 0; return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_function_contract.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_function_contract.c index 7f974013e571dc6b14a7110d1db787ef653d2340..cf98dc4d91082b705ff3df0ee251ce2e41c9d77a 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_function_contract.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_function_contract.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -21,7 +22,7 @@ int Y = 2; void f(void) { X = 1; - e_acsl_assert(! (X == 1),(char *)"Postcondition",(char *)"(X == 1)",10); + e_acsl_assert(X == 1,(char *)"Postcondition",(char *)"(X == 1)",10); return; } @@ -30,15 +31,15 @@ void f(void) void g(void) { X = 2; - e_acsl_assert(! (X == 2),(char *)"Postcondition",(char *)"(X == 2)",14); - e_acsl_assert(! (Y == 2),(char *)"Postcondition",(char *)"(Y == 2)",15); + e_acsl_assert(X == 2,(char *)"Postcondition",(char *)"(X == 2)",14); + e_acsl_assert(Y == 2,(char *)"Postcondition",(char *)"(Y == 2)",15); return; } /*@ requires X ≡ 2; */ void h(void) { - e_acsl_assert(! (X == 2),(char *)"Precondition",(char *)"(X == 2)",19); + e_acsl_assert(X == 2,(char *)"Precondition",(char *)"(X == 2)",19); X ++; return; } @@ -47,8 +48,8 @@ void h(void) requires Y ≡ 2; */ void i(void) { - e_acsl_assert(! (X == 3),(char *)"Precondition",(char *)"(X == 3)",23); - e_acsl_assert(! (Y == 2),(char *)"Precondition",(char *)"(Y == 2)",24); + e_acsl_assert(X == 3,(char *)"Precondition",(char *)"(X == 3)",23); + e_acsl_assert(Y == 2,(char *)"Precondition",(char *)"(Y == 2)",24); X += Y; return; } @@ -66,13 +67,13 @@ void i(void) */ void j(void) { - e_acsl_assert(! (X == 5),(char *)"Precondition",(char *)"(X == 5)",29); - e_acsl_assert(! ((long long)X == (long long)3 + (long long)Y), + e_acsl_assert(X == 5,(char *)"Precondition",(char *)"(X == 5)",29); + e_acsl_assert((long long)X == (long long)3 + (long long)Y, (char *)"Precondition",(char *)"(X == 3+Y)",32); - e_acsl_assert(! (Y == 2),(char *)"Precondition",(char *)"(Y == 2)",33); + e_acsl_assert(Y == 2,(char *)"Precondition",(char *)"(Y == 2)",33); X = 3; - e_acsl_assert(! (X == 3),(char *)"Postcondition",(char *)"(X == 3)",30); - e_acsl_assert(! ((long long)X == (long long)Y + (long long)1), + e_acsl_assert(X == 3,(char *)"Postcondition",(char *)"(X == 3)",30); + e_acsl_assert((long long)X == (long long)Y + (long long)1, (char *)"Postcondition",(char *)"(X == Y+1)",34); return; } @@ -99,19 +100,19 @@ void k(void) int __e_acsl_var_5; if (! (X == 1)) { __e_acsl_var = 1; } else { __e_acsl_var = X == 0; } - e_acsl_assert(! __e_acsl_var,(char *)"Precondition", + e_acsl_assert(__e_acsl_var,(char *)"Precondition", (char *)"(X == 1 ==> X == 0)",40); if (X == 3) { __e_acsl_var_2 = Y == 2; } else { __e_acsl_var_2 = 0; } if (! __e_acsl_var_2) { __e_acsl_var_3 = 1; } else { __e_acsl_var_3 = X == 3; } - e_acsl_assert(! __e_acsl_var_3,(char *)"Precondition", + e_acsl_assert(__e_acsl_var_3,(char *)"Precondition", (char *)"(X == 3 && Y == 2 ==> X == 3)",44); if (X == 3) { __e_acsl_var_4 = Y == 2; } else { __e_acsl_var_4 = 0; } if (! __e_acsl_var_4) { __e_acsl_var_5 = 1; } else { __e_acsl_var_5 = (long long)X + (long long)Y == (long long)5; } - e_acsl_assert(! __e_acsl_var_5,(char *)"Precondition", + e_acsl_assert(__e_acsl_var_5,(char *)"Precondition", (char *)"(X == 3 && Y == 2 ==> X+Y == 5)",45); X += Y; } @@ -123,8 +124,8 @@ void k(void) int l(void) { /*@ assert Y ≡ 2; */ ; - e_acsl_assert(! (Y == 2),(char *)"Assertion",(char *)"(Y == 2)",51); - e_acsl_assert(! (X == 5),(char *)"Postcondition",(char *)"(X == 5)",49); + e_acsl_assert(Y == 2,(char *)"Assertion",(char *)"(Y == 2)",51); + e_acsl_assert(X == 5,(char *)"Postcondition",(char *)"(X == 5)",49); return (X); } @@ -167,17 +168,17 @@ void m(void) int __e_acsl_var_9; if (! __e_acsl_var) { __e_acsl_var_2 = 1; } else { __e_acsl_var_2 = X == 95; } - e_acsl_assert(! __e_acsl_var_2,(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_2,(char *)"Postcondition", (char *)"(\\old(X == 7) ==> X == 95)",58); if (! __e_acsl_var_4) { __e_acsl_var_5 = 1; } else { __e_acsl_var_5 = X == 7; } - e_acsl_assert(! __e_acsl_var_5,(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_5,(char *)"Postcondition", (char *)"(\\old(X == 5 && Y == 2) ==> X == 7)",62); if (! __e_acsl_var_7) { __e_acsl_var_9 = 1; } else { __e_acsl_var_9 = (long long)X == (long long)__e_acsl_var_8 + (long long)Y; } - e_acsl_assert(! __e_acsl_var_9,(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_9,(char *)"Postcondition", (char *)"(\\old(X == 5 && Y == 2) ==> X == \\old(X)+Y)",63); return; } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_function_contract2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_function_contract2.c index 0b9dc4a37ded6c9222b143a71610cda37534e148..b91ee4c1fa656207487ebafd34d204fcf85529c6 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_function_contract2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_function_contract2.c @@ -81,9 +81,10 @@ extern int __gmpz_com(__mpz_struct * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -111,7 +112,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_3),(long)x); __e_acsl_var_4 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_2), (__mpz_struct const *)(__e_acsl_var_3)); - e_acsl_assert(! (__e_acsl_var_4 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4 == 0,(char *)"Assertion", (char *)"(-3 == x)",12); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -131,7 +132,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_6)); __e_acsl_var_8 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_5), (__mpz_struct const *)(__e_acsl_var_7)); - e_acsl_assert(! (__e_acsl_var_8 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_8 == 0,(char *)"Assertion", (char *)"(x == -3)",13); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_6)); @@ -149,7 +150,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_9)); __e_acsl_var_11 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_9), (__mpz_struct const *)(__e_acsl_var_10)); - e_acsl_assert(! (__e_acsl_var_11 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_11 != 0,(char *)"Assertion", (char *)"(0 != ~0)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_9)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); @@ -175,7 +176,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_15)); __e_acsl_var_17 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_14), (__mpz_struct const *)(__e_acsl_var_16)); - e_acsl_assert(! (__e_acsl_var_17 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_17 == 0,(char *)"Assertion", (char *)"(x+1 == -2)",16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_12)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_13)); @@ -204,7 +205,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_21)); __e_acsl_var_23 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_20), (__mpz_struct const *)(__e_acsl_var_22)); - e_acsl_assert(! (__e_acsl_var_23 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_23 == 0,(char *)"Assertion", (char *)"(x-1 == -4)",17); __gmpz_clear((__mpz_struct *)(__e_acsl_var_18)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_19)); @@ -233,7 +234,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_27)); __e_acsl_var_29 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_26), (__mpz_struct const *)(__e_acsl_var_28)); - e_acsl_assert(! (__e_acsl_var_29 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_29 == 0,(char *)"Assertion", (char *)"(x*3 == -9)",18); __gmpz_clear((__mpz_struct *)(__e_acsl_var_24)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_25)); @@ -259,7 +260,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_32)); __gmpz_init((__mpz_struct *)(__e_acsl_var_34)); /*@ assert 3 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_33 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_33 == 0),(char *)"Assertion", (char *)"(3 == 0)",19); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_30), @@ -270,7 +271,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_35)); __e_acsl_var_37 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_36)); - e_acsl_assert(! (__e_acsl_var_37 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_37 == 0,(char *)"Assertion", (char *)"(x/3 == -1)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_30)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_31)); @@ -295,7 +296,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_39)); __gmpz_init((__mpz_struct *)(__e_acsl_var_41)); /*@ assert 0xfffffffffff ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_40 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_40 == 0),(char *)"Assertion", (char *)"(0xfffffffffff == 0)",20); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_41), (__mpz_struct const *)(__e_acsl_var_38), @@ -303,7 +304,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_42),(long)1); __e_acsl_var_43 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_41), (__mpz_struct const *)(__e_acsl_var_42)); - e_acsl_assert(! (__e_acsl_var_43 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_43 == 0,(char *)"Assertion", (char *)"(0xfffffffffff/0xfffffffffff == 1)",20); __gmpz_clear((__mpz_struct *)(__e_acsl_var_38)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_39)); @@ -328,7 +329,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_46)); __gmpz_init((__mpz_struct *)(__e_acsl_var_48)); /*@ assert 2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_47 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_47 == 0),(char *)"Assertion", (char *)"(2 == 0)",21); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_48), (__mpz_struct const *)(__e_acsl_var_44), @@ -339,7 +340,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_49)); __e_acsl_var_51 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_48), (__mpz_struct const *)(__e_acsl_var_50)); - e_acsl_assert(! (__e_acsl_var_51 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_51 == 0,(char *)"Assertion", (char *)"(x%2 == -1)",21); __gmpz_clear((__mpz_struct *)(__e_acsl_var_44)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_45)); @@ -374,7 +375,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_56)); __gmpz_init((__mpz_struct *)(__e_acsl_var_58)); /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_57 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_57 == 0),(char *)"Assertion", (char *)"(-2 == 0)",22); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_58), (__mpz_struct const *)(__e_acsl_var_53), @@ -385,7 +386,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_59)); __e_acsl_var_61 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_58), (__mpz_struct const *)(__e_acsl_var_60)); - e_acsl_assert(! (__e_acsl_var_61 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_61 == 0,(char *)"Assertion", (char *)"(-3%-2 == -1)",22); __gmpz_clear((__mpz_struct *)(__e_acsl_var_52)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_53)); @@ -417,7 +418,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_65)); __gmpz_init((__mpz_struct *)(__e_acsl_var_67)); /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_66 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_66 == 0),(char *)"Assertion", (char *)"(-2 == 0)",23); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_67), (__mpz_struct const *)(__e_acsl_var_62), @@ -425,7 +426,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_68),(long)1); __e_acsl_var_69 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_67), (__mpz_struct const *)(__e_acsl_var_68)); - e_acsl_assert(! (__e_acsl_var_69 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_69 == 0,(char *)"Assertion", (char *)"(3%-2 == 1)",23); __gmpz_clear((__mpz_struct *)(__e_acsl_var_62)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_63)); @@ -486,7 +487,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_81)); __e_acsl_var_83 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_80), (__mpz_struct const *)(__e_acsl_var_82)); - e_acsl_assert(! (__e_acsl_var_83 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_83 == 0,(char *)"Assertion", (char *)"(((x*2+(3+y))-4)+(x-y) == -10)",25); __gmpz_clear((__mpz_struct *)(__e_acsl_var_70)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_71)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_integer_constant.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_integer_constant.c index f4989f5d944c13a2e3c497a6926c5d4dcff3761a..3268ebf06c12cad1ac7eb19e5517c467a1355bc8 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_integer_constant.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_integer_constant.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -20,12 +21,12 @@ int main(void) int __retres; int x; /*@ assert 0 ≡ 0; */ ; - e_acsl_assert(! (0 == 0),(char *)"Assertion",(char *)"(0 == 0)",9); + e_acsl_assert(0 == 0,(char *)"Assertion",(char *)"(0 == 0)",9); x = 0; /*@ assert 0 ≢ 1; */ ; - e_acsl_assert(! (0 != 1),(char *)"Assertion",(char *)"(0 != 1)",10); + e_acsl_assert(0 != 1,(char *)"Assertion",(char *)"(0 != 1)",10); /*@ assert 1152921504606846975 ≡ 0xfffffffffffffff; */ ; - e_acsl_assert(! ((unsigned long long)1152921504606846975 == (unsigned long long)0xfffffffffffffff), + e_acsl_assert((unsigned long long)1152921504606846975 == (unsigned long long)0xfffffffffffffff, (char *)"Assertion", (char *)"(1152921504606846975 == 0xfffffffffffffff)",11); __retres = 0; diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_integer_constant2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_integer_constant2.c index d5b9f1cc95e8fc8099f675259c73e8e643bb194c..adb8995b482ff01e25c9927e40c47c488ae0e8fc 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_integer_constant2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_integer_constant2.c @@ -28,9 +28,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -49,8 +50,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var),(long)0); __e_acsl_var_2 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var)); - e_acsl_assert(! (__e_acsl_var_2 == 0),(char *)"Assertion", - (char *)"(0 == 0)",9); + e_acsl_assert(__e_acsl_var_2 == 0,(char *)"Assertion",(char *)"(0 == 0)", + 9); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); } @@ -64,8 +65,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_4),(long)1); __e_acsl_var_5 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_3), (__mpz_struct const *)(__e_acsl_var_4)); - e_acsl_assert(! (__e_acsl_var_5 != 0),(char *)"Assertion", - (char *)"(0 != 1)",10); + e_acsl_assert(__e_acsl_var_5 != 0,(char *)"Assertion",(char *)"(0 != 1)", + 10); __gmpz_clear((__mpz_struct *)(__e_acsl_var_3)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); } @@ -78,7 +79,7 @@ int main(void) "1152921504606846975",10); __e_acsl_var_7 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_6), (__mpz_struct const *)(__e_acsl_var_6)); - e_acsl_assert(! (__e_acsl_var_7 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_7 == 0,(char *)"Assertion", (char *)"(1152921504606846975 == 0xfffffffffffffff)",11); __gmpz_clear((__mpz_struct *)(__e_acsl_var_6)); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_invariant.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_invariant.c index 60bdc576fc4b1d6f566ccfa036c337760144bcef..dbc15a14e1d1fcf3b9d6a0d47a50f122c96553df 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_invariant.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_invariant.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -29,13 +30,13 @@ int main(void) { int __e_acsl_var; if (0 <= i) { __e_acsl_var = i < 10; } else { __e_acsl_var = 0; } - e_acsl_assert(! __e_acsl_var,(char *)"Invariant", + e_acsl_assert(__e_acsl_var,(char *)"Invariant", (char *)"(0 <= i && i < 10)",9); } x += i; /*@ invariant i ≤ x; */ ; - e_acsl_assert(! (i <= x),(char *)"Invariant",(char *)"(i <= x)",11); + e_acsl_assert(i <= x,(char *)"Invariant",(char *)"(i <= x)",11); i ++; } } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_invariant2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_invariant2.c index 2d61fdda41e8d08a9149fc0d34b2ba23f3618621..77eddffa2f825a1bc18c8336f7e1f4f1a5b8d23d 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_invariant2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_invariant2.c @@ -24,9 +24,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -67,7 +68,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); } else { __e_acsl_var_7 = 0; } - e_acsl_assert(! __e_acsl_var_7,(char *)"Invariant", + e_acsl_assert(__e_acsl_var_7,(char *)"Invariant", (char *)"(0 <= i && i < 10)",9); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -83,7 +84,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_9),(long)x); __e_acsl_var_10 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_8), (__mpz_struct const *)(__e_acsl_var_9)); - e_acsl_assert(! (__e_acsl_var_10 <= 0),(char *)"Invariant", + e_acsl_assert(__e_acsl_var_10 <= 0,(char *)"Invariant", (char *)"(i <= x)",11); __gmpz_clear((__mpz_struct *)(__e_acsl_var_8)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_9)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_labeled_stmt.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_labeled_stmt.c index 2060c89b30e58cb5f8ea446d8de3d6a11e2ed3e6..8cfc0944f5e228b07434fcd66bf5eba06c5880e8 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_labeled_stmt.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_labeled_stmt.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -23,16 +24,16 @@ int main(void) goto L1; L1: /*@ assert X ≡ 0; */ ; - e_acsl_assert(! (X == 0),(char *)"Assertion",(char *)"(X == 0)",12); + e_acsl_assert(X == 0,(char *)"Assertion",(char *)"(X == 0)",12); X = 1; goto L2; L2: /*@ requires X ≡ 1; ensures X ≡ 2; */ { - e_acsl_assert(! (X == 1),(char *)"Precondition",(char *)"(X == 1)",14); + e_acsl_assert(X == 1,(char *)"Precondition",(char *)"(X == 1)",14); X = 2; - e_acsl_assert(! (X == 2),(char *)"Postcondition",(char *)"(X == 2)",14); + e_acsl_assert(X == 2,(char *)"Postcondition",(char *)"(X == 2)",14); } if (X) { @@ -40,7 +41,7 @@ int main(void) __retres = 0; goto return_label; } __retres = 0; - return_label: e_acsl_assert(! (X == 3),(char *)"Postcondition", + return_label: e_acsl_assert(X == 3,(char *)"Postcondition", (char *)"(X == 3)",9); return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_labeled_stmt2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_labeled_stmt2.c index a38e9802b6117ab8f6307d2c53302d3335ee2fa0..378b9606564765ac0ef2954ccb43293731cb1f8b 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_labeled_stmt2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_labeled_stmt2.c @@ -24,9 +24,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -50,8 +51,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)0); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", - (char *)"(X == 0)",12); + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion",(char *)"(X == 0)", + 12); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); } @@ -73,7 +74,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)1); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_6 == 0,(char *)"Precondition", (char *)"(X == 1)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); @@ -84,7 +85,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_8),(long)2); __e_acsl_var_9 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_7), (__mpz_struct const *)(__e_acsl_var_8)); - e_acsl_assert(! (__e_acsl_var_9 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_9 == 0,(char *)"Postcondition", (char *)"(X == 2)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_7)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_8)); @@ -104,7 +105,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_11),(long)3); __e_acsl_var_12 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_10), (__mpz_struct const *)(__e_acsl_var_11)); - e_acsl_assert(! (__e_acsl_var_12 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_12 == 0,(char *)"Postcondition", (char *)"(X == 3)",9); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_11)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_lazy.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_lazy.c index bbbfe5cfe74126c67e7bbd24e6af06ee7842f1dd..b158d0b9402bc93d76a5c68d13638d6fabeed566 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_lazy.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_lazy.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -26,7 +27,7 @@ int main(void) { int __e_acsl_var; if (x == 0) { __e_acsl_var = y == 1; } else { __e_acsl_var = 0; } - e_acsl_assert(! __e_acsl_var,(char *)"Assertion", + e_acsl_assert(__e_acsl_var,(char *)"Assertion", (char *)"(x == 0 && y == 1)",11); } @@ -36,12 +37,12 @@ int main(void) if (x != 0) { int __e_acsl_var_2; /*@ assert 0 ≢ 0; */ ; - e_acsl_assert(0 == 0,(char *)"Assertion",(char *)"(0 == 0)",12); + e_acsl_assert(! (0 == 0),(char *)"Assertion",(char *)"(0 == 0)",12); __e_acsl_var_2 = 1 / 0; __e_acsl_var_3 = y == __e_acsl_var_2; } else { __e_acsl_var_3 = 0; } - e_acsl_assert(! (! __e_acsl_var_3),(char *)"Assertion", + e_acsl_assert(! __e_acsl_var_3,(char *)"Assertion", (char *)"(!(x != 0 && y == 1/0))",12); } @@ -49,7 +50,7 @@ int main(void) { int __e_acsl_var_4; if (y == 1) { __e_acsl_var_4 = 1; } else { __e_acsl_var_4 = x == 1; } - e_acsl_assert(! __e_acsl_var_4,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4,(char *)"Assertion", (char *)"(y == 1 || x == 1)",13); } @@ -60,11 +61,11 @@ int main(void) else { int __e_acsl_var_5; /*@ assert 0 ≢ 0; */ ; - e_acsl_assert(0 == 0,(char *)"Assertion",(char *)"(0 == 0)",14); + e_acsl_assert(! (0 == 0),(char *)"Assertion",(char *)"(0 == 0)",14); __e_acsl_var_5 = 1 / 0; __e_acsl_var_6 = y == __e_acsl_var_5; } - e_acsl_assert(! __e_acsl_var_6,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_6,(char *)"Assertion", (char *)"(x == 0 || y == 1/0)",14); } @@ -72,7 +73,7 @@ int main(void) { int __e_acsl_var_7; if (! (x == 0)) { __e_acsl_var_7 = 1; } else { __e_acsl_var_7 = y == 1; } - e_acsl_assert(! __e_acsl_var_7,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_7,(char *)"Assertion", (char *)"(x == 0 ==> y == 1)",15); } @@ -83,11 +84,11 @@ int main(void) else { int __e_acsl_var_8; /*@ assert 0 ≢ 0; */ ; - e_acsl_assert(0 == 0,(char *)"Assertion",(char *)"(0 == 0)",16); + e_acsl_assert(! (0 == 0),(char *)"Assertion",(char *)"(0 == 0)",16); __e_acsl_var_8 = 1 / 0; __e_acsl_var_9 = y == __e_acsl_var_8; } - e_acsl_assert(! __e_acsl_var_9,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_9,(char *)"Assertion", (char *)"(x == 1 ==> y == 1/0)",16); } @@ -95,7 +96,7 @@ int main(void) { int __e_acsl_var_10; if (x != 0) { __e_acsl_var_10 = x != 0; } else { __e_acsl_var_10 = y != 0; } - e_acsl_assert(! __e_acsl_var_10,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_10,(char *)"Assertion", (char *)"(x!=0? x != 0: y != 0)",17); } @@ -103,7 +104,7 @@ int main(void) { int __e_acsl_var_11; if (y != 0) { __e_acsl_var_11 = y != 0; } else { __e_acsl_var_11 = x != 0; } - e_acsl_assert(! __e_acsl_var_11,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_11,(char *)"Assertion", (char *)"(y!=0? y != 0: x != 0)",18); } @@ -111,7 +112,7 @@ int main(void) { int __e_acsl_var_12; if (x == 1) { __e_acsl_var_12 = x == 18; } else { __e_acsl_var_12 = x == 0; } - e_acsl_assert(! __e_acsl_var_12,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_12,(char *)"Assertion", (char *)"(x==1? x == 18: x == 0)",19); } @@ -128,7 +129,7 @@ int main(void) __e_acsl_var_15 = __e_acsl_var_14; } else { __e_acsl_var_15 = 0; } - e_acsl_assert(! __e_acsl_var_15,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_15,(char *)"Assertion", (char *)"(x == 2 <==> y == 3)",22); } @@ -145,7 +146,7 @@ int main(void) __e_acsl_var_18 = __e_acsl_var_17; } else { __e_acsl_var_18 = 0; } - e_acsl_assert(! __e_acsl_var_18,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_18,(char *)"Assertion", (char *)"(x == 0 <==> y == 1)",23); } @@ -153,7 +154,7 @@ int main(void) { int __e_acsl_var_19; if (x != 0) { __e_acsl_var_19 = x; } else { __e_acsl_var_19 = y; } - e_acsl_assert(! ((__e_acsl_var_19 != 0) == (x == 0)),(char *)"Assertion", + e_acsl_assert((__e_acsl_var_19 != 0) == (x == 0),(char *)"Assertion", (char *)"(((x!=0? x: y)!=0) == (x==0))",26); } @@ -165,7 +166,7 @@ int main(void) else { __e_acsl_var_20 = 0; } if (__e_acsl_var_20) { __e_acsl_var_21 = 1; } else { __e_acsl_var_21 = y != 0; } - e_acsl_assert(! __e_acsl_var_21,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_21,(char *)"Assertion", (char *)"((x != 0 && y != 0) || y != 0)",27); } @@ -177,7 +178,7 @@ int main(void) else { __e_acsl_var_22 = y != 0; } if (__e_acsl_var_22) { __e_acsl_var_23 = y == 1; } else { __e_acsl_var_23 = 0; } - e_acsl_assert(! __e_acsl_var_23,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_23,(char *)"Assertion", (char *)"((x != 0 || y != 0) && y == 1)",28); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_lazy2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_lazy2.c index 6907be62c4f0c794a1bb1cfaf787f82c936883d0..e51203f847deb102e20094a2478c7d5e9a2c6fb1 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_lazy2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_lazy2.c @@ -35,9 +35,10 @@ extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -75,7 +76,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); } else { __e_acsl_var_7 = 0; } - e_acsl_assert(! __e_acsl_var_7,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_7,(char *)"Assertion", (char *)"(x == 0 && y == 1)",11); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -105,7 +106,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_13)); __gmpz_init((__mpz_struct *)(__e_acsl_var_15)); /*@ assert 0 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_14 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_14 == 0),(char *)"Assertion", (char *)"(0 == 0)",12); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_15), (__mpz_struct const *)(__e_acsl_var_12), @@ -119,7 +120,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_15)); } else { __e_acsl_var_17 = 0; } - e_acsl_assert(! (! __e_acsl_var_17),(char *)"Assertion", + e_acsl_assert(! __e_acsl_var_17,(char *)"Assertion", (char *)"(!(x != 0 && y == 1/0))",12); __gmpz_clear((__mpz_struct *)(__e_acsl_var_8)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_9)); @@ -148,7 +149,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_21)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_22)); } - e_acsl_assert(! __e_acsl_var_24,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_24,(char *)"Assertion", (char *)"(y == 1 || x == 1)",13); __gmpz_clear((__mpz_struct *)(__e_acsl_var_18)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_19)); @@ -179,7 +180,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_30)); __gmpz_init((__mpz_struct *)(__e_acsl_var_32)); /*@ assert 0 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_31 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_31 == 0),(char *)"Assertion", (char *)"(0 == 0)",14); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_32), (__mpz_struct const *)(__e_acsl_var_29), @@ -192,7 +193,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_30)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_32)); } - e_acsl_assert(! __e_acsl_var_34,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_34,(char *)"Assertion", (char *)"(x == 0 || y == 1/0)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_25)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_26)); @@ -221,7 +222,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_38)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_39)); } - e_acsl_assert(! __e_acsl_var_41,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_41,(char *)"Assertion", (char *)"(x == 0 ==> y == 1)",15); __gmpz_clear((__mpz_struct *)(__e_acsl_var_35)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_36)); @@ -252,7 +253,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_47)); __gmpz_init((__mpz_struct *)(__e_acsl_var_49)); /*@ assert 0 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_48 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_48 == 0),(char *)"Assertion", (char *)"(0 == 0)",16); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_49), (__mpz_struct const *)(__e_acsl_var_46), @@ -265,7 +266,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_47)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_49)); } - e_acsl_assert(! __e_acsl_var_51,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_51,(char *)"Assertion", (char *)"(x == 1 ==> y == 1/0)",16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_42)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_43)); @@ -305,7 +306,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_58)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_59)); } - e_acsl_assert(! __e_acsl_var_61,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_61,(char *)"Assertion", (char *)"(x!=0? x != 0: y != 0)",17); __gmpz_clear((__mpz_struct *)(__e_acsl_var_52)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_53)); @@ -345,7 +346,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_68)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_69)); } - e_acsl_assert(! __e_acsl_var_71,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_71,(char *)"Assertion", (char *)"(y!=0? y != 0: x != 0)",18); __gmpz_clear((__mpz_struct *)(__e_acsl_var_62)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_63)); @@ -385,7 +386,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_78)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_79)); } - e_acsl_assert(! __e_acsl_var_81,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_81,(char *)"Assertion", (char *)"(x==1? x == 18: x == 0)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_72)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_73)); @@ -442,7 +443,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_90)); } else { __e_acsl_var_96 = 0; } - e_acsl_assert(! __e_acsl_var_96,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_96,(char *)"Assertion", (char *)"(x == 2 <==> y == 3)",22); __gmpz_clear((__mpz_struct *)(__e_acsl_var_82)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_83)); @@ -499,7 +500,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_105)); } else { __e_acsl_var_111 = 0; } - e_acsl_assert(! __e_acsl_var_111,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_111,(char *)"Assertion", (char *)"(x == 0 <==> y == 1)",23); __gmpz_clear((__mpz_struct *)(__e_acsl_var_97)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_98)); @@ -543,7 +544,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_119)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_120)); } - e_acsl_assert(! __e_acsl_var_122,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_122,(char *)"Assertion", (char *)"((x != 0 && y != 0) || y != 0)",27); __gmpz_clear((__mpz_struct *)(__e_acsl_var_112)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_113)); @@ -586,7 +587,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_131)); } else { __e_acsl_var_133 = 0; } - e_acsl_assert(! __e_acsl_var_133,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_133,(char *)"Assertion", (char *)"((x != 0 || y != 0) && y == 1)",28); __gmpz_clear((__mpz_struct *)(__e_acsl_var_123)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_124)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_linear_search.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_linear_search.c index da18a1cf9dcecf34c4bde29715235bfd5d1872c1..41e913947d6be0a204cb4bdaa32db6b06f49d130 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_linear_search.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_linear_search.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -47,7 +48,7 @@ int search(int elt) __e_acsl_i ++; } e_acsl_end_loop1: ; - e_acsl_assert(! __e_acsl_var,(char *)"Precondition", + e_acsl_assert(__e_acsl_var,(char *)"Precondition", (char *)"(\\forall int i; 0 <= i && i < 9 ==> A[i] <= A[i+1])", 9); { @@ -105,12 +106,12 @@ int search(int elt) int __e_acsl_var_7; if (! __e_acsl_var_3) { __e_acsl_var_4 = 1; } else { __e_acsl_var_4 = __retres == 1; } - e_acsl_assert(! __e_acsl_var_4,(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_4,(char *)"Postcondition", (char *)"(\\old(\\exists int j; (0 <= j && j < 10) && A[j] == elt) ==> \\result == 1)", 12); if (! __e_acsl_var_6) { __e_acsl_var_7 = 1; } else { __e_acsl_var_7 = __retres == 0; } - e_acsl_assert(! __e_acsl_var_7,(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_7,(char *)"Postcondition", (char *)"(\\old(\\forall int j; 0 <= j && j < 10 ==> A[j] != elt) ==> \\result == 0)", 15); return (__retres); @@ -131,10 +132,10 @@ int main(void) found = search(36); /*@ assert found ≡ 1; */ ; - e_acsl_assert(! (found == 1),(char *)"Assertion",(char *)"(found == 1)",31); + e_acsl_assert(found == 1,(char *)"Assertion",(char *)"(found == 1)",31); found = search(5); /*@ assert found ≡ 0; */ ; - e_acsl_assert(! (found == 0),(char *)"Assertion",(char *)"(found == 0)",34); + e_acsl_assert(found == 0,(char *)"Assertion",(char *)"(found == 0)",34); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_linear_search2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_linear_search2.c index 0b9dc4a37ded6c9222b143a71610cda37534e148..b91ee4c1fa656207487ebafd34d204fcf85529c6 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_linear_search2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_linear_search2.c @@ -81,9 +81,10 @@ extern int __gmpz_com(__mpz_struct * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -111,7 +112,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_3),(long)x); __e_acsl_var_4 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_2), (__mpz_struct const *)(__e_acsl_var_3)); - e_acsl_assert(! (__e_acsl_var_4 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4 == 0,(char *)"Assertion", (char *)"(-3 == x)",12); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -131,7 +132,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_6)); __e_acsl_var_8 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_5), (__mpz_struct const *)(__e_acsl_var_7)); - e_acsl_assert(! (__e_acsl_var_8 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_8 == 0,(char *)"Assertion", (char *)"(x == -3)",13); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_6)); @@ -149,7 +150,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_9)); __e_acsl_var_11 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_9), (__mpz_struct const *)(__e_acsl_var_10)); - e_acsl_assert(! (__e_acsl_var_11 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_11 != 0,(char *)"Assertion", (char *)"(0 != ~0)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_9)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); @@ -175,7 +176,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_15)); __e_acsl_var_17 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_14), (__mpz_struct const *)(__e_acsl_var_16)); - e_acsl_assert(! (__e_acsl_var_17 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_17 == 0,(char *)"Assertion", (char *)"(x+1 == -2)",16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_12)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_13)); @@ -204,7 +205,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_21)); __e_acsl_var_23 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_20), (__mpz_struct const *)(__e_acsl_var_22)); - e_acsl_assert(! (__e_acsl_var_23 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_23 == 0,(char *)"Assertion", (char *)"(x-1 == -4)",17); __gmpz_clear((__mpz_struct *)(__e_acsl_var_18)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_19)); @@ -233,7 +234,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_27)); __e_acsl_var_29 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_26), (__mpz_struct const *)(__e_acsl_var_28)); - e_acsl_assert(! (__e_acsl_var_29 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_29 == 0,(char *)"Assertion", (char *)"(x*3 == -9)",18); __gmpz_clear((__mpz_struct *)(__e_acsl_var_24)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_25)); @@ -259,7 +260,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_32)); __gmpz_init((__mpz_struct *)(__e_acsl_var_34)); /*@ assert 3 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_33 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_33 == 0),(char *)"Assertion", (char *)"(3 == 0)",19); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_30), @@ -270,7 +271,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_35)); __e_acsl_var_37 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_36)); - e_acsl_assert(! (__e_acsl_var_37 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_37 == 0,(char *)"Assertion", (char *)"(x/3 == -1)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_30)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_31)); @@ -295,7 +296,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_39)); __gmpz_init((__mpz_struct *)(__e_acsl_var_41)); /*@ assert 0xfffffffffff ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_40 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_40 == 0),(char *)"Assertion", (char *)"(0xfffffffffff == 0)",20); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_41), (__mpz_struct const *)(__e_acsl_var_38), @@ -303,7 +304,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_42),(long)1); __e_acsl_var_43 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_41), (__mpz_struct const *)(__e_acsl_var_42)); - e_acsl_assert(! (__e_acsl_var_43 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_43 == 0,(char *)"Assertion", (char *)"(0xfffffffffff/0xfffffffffff == 1)",20); __gmpz_clear((__mpz_struct *)(__e_acsl_var_38)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_39)); @@ -328,7 +329,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_46)); __gmpz_init((__mpz_struct *)(__e_acsl_var_48)); /*@ assert 2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_47 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_47 == 0),(char *)"Assertion", (char *)"(2 == 0)",21); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_48), (__mpz_struct const *)(__e_acsl_var_44), @@ -339,7 +340,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_49)); __e_acsl_var_51 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_48), (__mpz_struct const *)(__e_acsl_var_50)); - e_acsl_assert(! (__e_acsl_var_51 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_51 == 0,(char *)"Assertion", (char *)"(x%2 == -1)",21); __gmpz_clear((__mpz_struct *)(__e_acsl_var_44)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_45)); @@ -374,7 +375,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_56)); __gmpz_init((__mpz_struct *)(__e_acsl_var_58)); /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_57 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_57 == 0),(char *)"Assertion", (char *)"(-2 == 0)",22); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_58), (__mpz_struct const *)(__e_acsl_var_53), @@ -385,7 +386,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_59)); __e_acsl_var_61 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_58), (__mpz_struct const *)(__e_acsl_var_60)); - e_acsl_assert(! (__e_acsl_var_61 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_61 == 0,(char *)"Assertion", (char *)"(-3%-2 == -1)",22); __gmpz_clear((__mpz_struct *)(__e_acsl_var_52)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_53)); @@ -417,7 +418,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_65)); __gmpz_init((__mpz_struct *)(__e_acsl_var_67)); /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_66 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_66 == 0),(char *)"Assertion", (char *)"(-2 == 0)",23); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_67), (__mpz_struct const *)(__e_acsl_var_62), @@ -425,7 +426,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_68),(long)1); __e_acsl_var_69 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_67), (__mpz_struct const *)(__e_acsl_var_68)); - e_acsl_assert(! (__e_acsl_var_69 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_69 == 0,(char *)"Assertion", (char *)"(3%-2 == 1)",23); __gmpz_clear((__mpz_struct *)(__e_acsl_var_62)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_63)); @@ -486,7 +487,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_81)); __e_acsl_var_83 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_80), (__mpz_struct const *)(__e_acsl_var_82)); - e_acsl_assert(! (__e_acsl_var_83 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_83 == 0,(char *)"Assertion", (char *)"(((x*2+(3+y))-4)+(x-y) == -10)",25); __gmpz_clear((__mpz_struct *)(__e_acsl_var_70)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_71)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_nested_code_annot.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_nested_code_annot.c index 3999f5c0923e6796674c415e99899a72f02e7409..bc68c1e9cb5de46a76f5b61ea74eb79c4e7850d1 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_nested_code_annot.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_nested_code_annot.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -23,44 +24,40 @@ int main(void) x = 0; y = 1; /*@ assert x < y; */ ; - e_acsl_assert(! (x < y),(char *)"Assertion",(char *)"(x < y)",9); + e_acsl_assert(x < y,(char *)"Assertion",(char *)"(x < y)",9); /*@ requires x ≡ 0; ensures x ≥ 1; */ { - e_acsl_assert(! (x == 0),(char *)"Precondition",(char *)"(x == 0)",10); + e_acsl_assert(x == 0,(char *)"Precondition",(char *)"(x == 0)",10); if (x) { /*@ assert \false; */ ; - e_acsl_assert(1,(char *)"Assertion",(char *)"(\\false)",13); + e_acsl_assert(0,(char *)"Assertion",(char *)"(\\false)",13); } else { /*@ requires x ≡ 0; ensures x ≡ 1; */ { - e_acsl_assert(! (x == 0),(char *)"Precondition",(char *)"(x == 0)", - 15); + e_acsl_assert(x == 0,(char *)"Precondition",(char *)"(x == 0)",15); x ++; - e_acsl_assert(! (x == 1),(char *)"Postcondition",(char *)"(x == 1)", - 16); + e_acsl_assert(x == 1,(char *)"Postcondition",(char *)"(x == 1)",16); } if (x) { /*@ requires x ≡ 1; ensures x ≡ 2; */ { - e_acsl_assert(! (x == 1),(char *)"Precondition",(char *)"(x == 1)", - 19); + e_acsl_assert(x == 1,(char *)"Precondition",(char *)"(x == 1)",19); x ++; - e_acsl_assert(! (x == 2),(char *)"Postcondition", - (char *)"(x == 2)",20); + e_acsl_assert(x == 2,(char *)"Postcondition",(char *)"(x == 2)",20); } } else { /*@ assert \false; */ ; - e_acsl_assert(1,(char *)"Assertion",(char *)"(\\false)",23); + e_acsl_assert(0,(char *)"Assertion",(char *)"(\\false)",23); } } - e_acsl_assert(! (x >= 1),(char *)"Postcondition",(char *)"(x >= 1)",11); + e_acsl_assert(x >= 1,(char *)"Postcondition",(char *)"(x >= 1)",11); } __retres = 0; diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_nested_code_annot2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_nested_code_annot2.c index 44a0236904d877d7c42b13c8043fc3f42a3e98c9..04d1217dc1de81697904357c6e9b72395fe455dd 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_nested_code_annot2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_nested_code_annot2.c @@ -24,9 +24,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -50,8 +51,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)y); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 < 0),(char *)"Assertion", - (char *)"(x < y)",9); + e_acsl_assert(__e_acsl_var_3 < 0,(char *)"Assertion",(char *)"(x < y)",9); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); } @@ -70,13 +70,13 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)0); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_6 == 0,(char *)"Precondition", (char *)"(x == 0)",10); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); if (x) { /*@ assert \false; */ ; - e_acsl_assert(1,(char *)"Assertion",(char *)"(\\false)",13); + e_acsl_assert(0,(char *)"Assertion",(char *)"(\\false)",13); } else { /*@ requires x ≡ 0; @@ -93,7 +93,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_8),(long)0); __e_acsl_var_9 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_7), (__mpz_struct const *)(__e_acsl_var_8)); - e_acsl_assert(! (__e_acsl_var_9 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_9 == 0,(char *)"Precondition", (char *)"(x == 0)",15); __gmpz_clear((__mpz_struct *)(__e_acsl_var_7)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_8)); @@ -104,7 +104,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_11),(long)1); __e_acsl_var_12 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_10), (__mpz_struct const *)(__e_acsl_var_11)); - e_acsl_assert(! (__e_acsl_var_12 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_12 == 0,(char *)"Postcondition", (char *)"(x == 1)",16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_11)); @@ -125,7 +125,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_14),(long)1); __e_acsl_var_15 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_13), (__mpz_struct const *)(__e_acsl_var_14)); - e_acsl_assert(! (__e_acsl_var_15 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_15 == 0,(char *)"Precondition", (char *)"(x == 1)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_13)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_14)); @@ -136,7 +136,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_17),(long)2); __e_acsl_var_18 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_16), (__mpz_struct const *)(__e_acsl_var_17)); - e_acsl_assert(! (__e_acsl_var_18 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_18 == 0,(char *)"Postcondition", (char *)"(x == 2)",20); __gmpz_clear((__mpz_struct *)(__e_acsl_var_16)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_17)); @@ -145,7 +145,7 @@ int main(void) } else { /*@ assert \false; */ ; - e_acsl_assert(1,(char *)"Assertion",(char *)"(\\false)",23); + e_acsl_assert(0,(char *)"Assertion",(char *)"(\\false)",23); } } } @@ -154,7 +154,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_20),(long)1); __e_acsl_var_21 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_19), (__mpz_struct const *)(__e_acsl_var_20)); - e_acsl_assert(! (__e_acsl_var_21 >= 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_21 >= 0,(char *)"Postcondition", (char *)"(x >= 1)",11); __gmpz_clear((__mpz_struct *)(__e_acsl_var_19)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_20)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_not.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_not.c index a0259ccfb24113761e439b65d31a095a1cbc438a..3d0bd39a388494496abcf795cfd6d5984174324a 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_not.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_not.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -21,10 +22,10 @@ int main(void) int x; x = 0; /*@ assert x ≡ 0; */ ; - e_acsl_assert(! (x == 0),(char *)"Assertion",(char *)"(x == 0)",8); + e_acsl_assert(x == 0,(char *)"Assertion",(char *)"(x == 0)",8); if (x) { /*@ assert x ≢ 0; */ ; - e_acsl_assert(! (x != 0),(char *)"Assertion",(char *)"(x != 0)",9); + e_acsl_assert(x != 0,(char *)"Assertion",(char *)"(x != 0)",9); } __retres = 0; return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_not2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_not2.c index 02c1e7398d7046fe1a51df058669e031c66eff12..c995015bc06a8983c6b6e32478f9e4c4b6a91235 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_not2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_not2.c @@ -24,9 +24,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -48,8 +49,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)0); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", - (char *)"(x == 0)",8); + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion",(char *)"(x == 0)", + 8); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); } @@ -64,7 +65,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)0); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_6 != 0,(char *)"Assertion", (char *)"(x != 0)",9); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_null.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_null.c index 18d9040f32c6f98c63c8f5e6a6b208057aab5db2..490d636953664638a5b5ecfa6b52d47a7124c706 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_null.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_null.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -19,7 +20,7 @@ int main(void) { int __retres; /*@ assert \null ≡ (void *)0; */ ; - e_acsl_assert(! ((void *)0 == (void *)0),(char *)"Assertion", + e_acsl_assert((void *)0 == (void *)0,(char *)"Assertion", (char *)"(\\null == (void *)0)",8); __retres = 0; return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_null2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_null2.c index 18d9040f32c6f98c63c8f5e6a6b208057aab5db2..490d636953664638a5b5ecfa6b52d47a7124c706 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_null2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_null2.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -19,7 +20,7 @@ int main(void) { int __retres; /*@ assert \null ≡ (void *)0; */ ; - e_acsl_assert(! ((void *)0 == (void *)0),(char *)"Assertion", + e_acsl_assert((void *)0 == (void *)0,(char *)"Assertion", (char *)"(\\null == (void *)0)",8); __retres = 0; return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_other_constants.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_other_constants.c index a1c123d5f21c0bcb9fbcb9563391696296cd38c7..0f54974d2ae1be31beebdd3e1496ad90c02654f9 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_other_constants.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_other_constants.c @@ -9,9 +9,10 @@ enum bool { extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -23,14 +24,13 @@ int main(void) { int __retres; /*@ assert "toto" ≢ "titi"; */ ; - e_acsl_assert(! ("toto" != "titi"),(char *)"Assertion", + e_acsl_assert("toto" != "titi",(char *)"Assertion", (char *)"(\"toto\" != \"titi\")",10); /*@ assert 'c' ≡ 'c'; */ ; - e_acsl_assert(! ('c' == 'c'),(char *)"Assertion", - (char *)"(\'c\' == \'c\')",11); + e_acsl_assert('c' == 'c',(char *)"Assertion",(char *)"(\'c\' == \'c\')",11); /*@ assert false ≢ true; */ ; - e_acsl_assert(! (false != true),(char *)"Assertion", - (char *)"(false != true)",12); + e_acsl_assert(false != true,(char *)"Assertion",(char *)"(false != true)", + 12); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_other_constants2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_other_constants2.c index 09541e160936fe15716c46988299e240b811e92b..49037d898eae52e193e8d841b08ae403e6ac0c98 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_other_constants2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_other_constants2.c @@ -28,9 +28,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -42,7 +43,7 @@ int main(void) { int __retres; /*@ assert "toto" ≢ "titi"; */ ; - e_acsl_assert(! ("toto" != "titi"),(char *)"Assertion", + e_acsl_assert("toto" != "titi",(char *)"Assertion", (char *)"(\"toto\" != \"titi\")",10); /*@ assert 'c' ≡ 'c'; */ ; { @@ -51,7 +52,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var),(long)'c'); __e_acsl_var_2 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var)); - e_acsl_assert(! (__e_acsl_var_2 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_2 == 0,(char *)"Assertion", (char *)"(\'c\' == \'c\')",11); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); } @@ -65,7 +66,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_4),(long)true); __e_acsl_var_5 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_3), (__mpz_struct const *)(__e_acsl_var_4)); - e_acsl_assert(! (__e_acsl_var_5 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_5 != 0,(char *)"Assertion", (char *)"(false != true)",12); __gmpz_clear((__mpz_struct *)(__e_acsl_var_3)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr.c index 1473c578fbbf445a383092164c64abc855d908e0..dba9793c88e90ffa66a4a216b3bfc8ead5a1c87c 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -27,19 +28,19 @@ int main(void) t[2] = 4; p = & x; /*@ assert *p ≡ 1; */ ; - e_acsl_assert(! (*p == 1),(char *)"Assertion",(char *)"(*p == 1)",13); + e_acsl_assert(*p == 1,(char *)"Assertion",(char *)"(*p == 1)",13); /*@ assert t[0] ≡ 2; */ ; - e_acsl_assert(! (t[0] == 2),(char *)"Assertion",(char *)"(t[0] == 2)",14); + e_acsl_assert(t[0] == 2,(char *)"Assertion",(char *)"(t[0] == 2)",14); /*@ assert t[2] ≡ 4; */ ; - e_acsl_assert(! (t[2] == 4),(char *)"Assertion",(char *)"(t[2] == 4)",15); + e_acsl_assert(t[2] == 4,(char *)"Assertion",(char *)"(t[2] == 4)",15); /*@ assert t[(2*sizeof(int))/sizeof((int)0x0)] ≡ 4; */ ; { int __e_acsl_var; /*@ assert sizeof((int)0x0) ≢ 0; */ ; - e_acsl_assert(4 == 0,(char *)"Assertion", + e_acsl_assert(! (4 == 0),(char *)"Assertion", (char *)"(sizeof((int)0x0) == 0)",16); __e_acsl_var = (2 * 4) / 4; - e_acsl_assert(! (t[__e_acsl_var] == 4),(char *)"Assertion", + e_acsl_assert(t[__e_acsl_var] == 4,(char *)"Assertion", (char *)"(t[(2*sizeof(int))/sizeof((int)0x0)] == 4)",16); } @@ -49,13 +50,13 @@ int main(void) while (1) { if (! (i < 2)) { break; } /*@ assert t[i] ≡ i+2; */ ; - e_acsl_assert(! ((long long)t[i] == (long long)i + (long long)2), + e_acsl_assert((long long)t[i] == (long long)i + (long long)2, (char *)"Assertion",(char *)"(t[i] == i+2)",19); /*@ assert t[2-i] ≡ 4-i; */ ; - e_acsl_assert(! ((long long)t[(long long)2 - (long long)i] == (long long)4 - (long long)i), + e_acsl_assert((long long)t[(long long)2 - (long long)i] == (long long)4 - (long long)i, (char *)"Assertion",(char *)"(t[2-i] == 4-i)",20); /*@ assert *(&t[2]-i) ≡ 4-i; */ ; - e_acsl_assert(! ((long long)*(& t[2] - i) == (long long)4 - (long long)i), + e_acsl_assert((long long)*(& t[2] - i) == (long long)4 - (long long)i, (char *)"Assertion",(char *)"(*(&t[2]-i) == 4-i)",21); i ++; } @@ -64,7 +65,7 @@ int main(void) p = & t[2]; t[2] = 5; /*@ assert *p ≡ 5; */ ; - e_acsl_assert(! (*p == 5),(char *)"Assertion",(char *)"(*p == 5)",27); + e_acsl_assert(*p == 5,(char *)"Assertion",(char *)"(*p == 5)",27); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr2.c index 47af5506d5bf3fbbb07ed2c963b4ad02544b8c81..82beea1b50945c412b7a4132b8e1812398f85bde 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr2.c @@ -62,9 +62,10 @@ extern unsigned long __gmpz_get_ui(__mpz_struct const * /*[1]*/ z); extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -92,7 +93,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)1); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion", (char *)"(*p == 1)",13); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -107,7 +108,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)2); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_6 == 0,(char *)"Assertion", (char *)"(t[0] == 2)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); @@ -122,7 +123,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_8),(long)4); __e_acsl_var_9 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_7), (__mpz_struct const *)(__e_acsl_var_8)); - e_acsl_assert(! (__e_acsl_var_9 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_9 == 0,(char *)"Assertion", (char *)"(t[2] == 4)",15); __gmpz_clear((__mpz_struct *)(__e_acsl_var_7)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_8)); @@ -153,7 +154,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_14)); __gmpz_init((__mpz_struct *)(__e_acsl_var_16)); /*@ assert sizeof((int)0x0) ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_15 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_15 == 0),(char *)"Assertion", (char *)"(sizeof((int)0x0) == 0)",16); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_16), (__mpz_struct const *)(__e_acsl_var_12), @@ -164,7 +165,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_19),(long)4); __e_acsl_var_20 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_18), (__mpz_struct const *)(__e_acsl_var_19)); - e_acsl_assert(! (__e_acsl_var_20 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_20 == 0,(char *)"Assertion", (char *)"(t[(2*sizeof(int))/sizeof((int)0x0)] == 4)",16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_11)); @@ -197,7 +198,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_23)); __e_acsl_var_25 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_21), (__mpz_struct const *)(__e_acsl_var_24)); - e_acsl_assert(! (__e_acsl_var_25 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_25 == 0,(char *)"Assertion", (char *)"(t[i] == i+2)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_21)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_22)); @@ -231,7 +232,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_27)); __e_acsl_var_33 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_30), (__mpz_struct const *)(__e_acsl_var_32)); - e_acsl_assert(! (__e_acsl_var_33 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_33 == 0,(char *)"Assertion", (char *)"(t[2-i] == 4-i)",20); __gmpz_clear((__mpz_struct *)(__e_acsl_var_26)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_27)); @@ -258,7 +259,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_36)); __e_acsl_var_38 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_37)); - e_acsl_assert(! (__e_acsl_var_38 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_38 == 0,(char *)"Assertion", (char *)"(*(&t[2]-i) == 4-i)",21); __gmpz_clear((__mpz_struct *)(__e_acsl_var_34)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_35)); @@ -281,7 +282,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_40),(long)5); __e_acsl_var_41 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_39), (__mpz_struct const *)(__e_acsl_var_40)); - e_acsl_assert(! (__e_acsl_var_41 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_41 == 0,(char *)"Assertion", (char *)"(*p == 5)",27); __gmpz_clear((__mpz_struct *)(__e_acsl_var_39)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_40)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif.c index d3364a12be6ba99eaaa8bc9dd07554486bdcc219..f043afbb8684ea93bfa5c62f924d9263f830ef58 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -37,7 +38,7 @@ int main(void) __e_acsl_x ++; } e_acsl_end_loop1: ; - e_acsl_assert(! __e_acsl_var,(char *)"Assertion", + e_acsl_assert(__e_acsl_var,(char *)"Assertion", (char *)"(\\forall int x; 0 <= x && x <= 1 ==> x == 0 || x == 1)", 11); } @@ -56,7 +57,7 @@ int main(void) __e_acsl_x_2 ++; } e_acsl_end_loop2: ; - e_acsl_assert(! __e_acsl_var_3,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_3,(char *)"Assertion", (char *)"(\\forall int x; 0 < x && x <= 1 ==> x == 1)",12); } @@ -73,7 +74,7 @@ int main(void) __e_acsl_x_3 ++; } e_acsl_end_loop3: ; - e_acsl_assert(! __e_acsl_var_4,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4,(char *)"Assertion", (char *)"(\\forall int x; 0 < x && x < 1 ==> \\false)",13); } @@ -91,7 +92,7 @@ int main(void) __e_acsl_x_4 ++; } e_acsl_end_loop4: ; - e_acsl_assert(! __e_acsl_var_5,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_5,(char *)"Assertion", (char *)"(\\forall int x; 0 <= x && x < 1 ==> x == 0)",14); } @@ -125,7 +126,7 @@ int main(void) __e_acsl_x_5 ++; } e_acsl_end_loop5: ; - e_acsl_assert(! __e_acsl_var_6,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_6,(char *)"Assertion", (char *)"(\\forall int x, int y, int z;\n ((0 <= x && x < 2) && (0 <= y && y < 5)) && (0 <= z && z <= y) ==>\n x+z <= y+1)", 18); } @@ -145,7 +146,7 @@ int main(void) __e_acsl_x_6 ++; } e_acsl_end_loop6: ; - e_acsl_assert(! __e_acsl_var_7,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_7,(char *)"Assertion", (char *)"(\\exists int x; (0 <= x && x < 10) && x == 5)", 23); } @@ -164,7 +165,7 @@ int main(void) int __e_acsl_var_9; int __e_acsl_var_12; /*@ assert 2 ≢ 0; */ ; - e_acsl_assert(2 == 0,(char *)"Assertion",(char *)"(2 == 0)",28); + e_acsl_assert(! (2 == 0),(char *)"Assertion",(char *)"(2 == 0)",28); __e_acsl_var_9 = __e_acsl_x_7 % 2; if (! (__e_acsl_var_9 == 0)) { __e_acsl_var_12 = 1; } else { @@ -176,7 +177,8 @@ int main(void) { int __e_acsl_var_11; /*@ assert 2 ≢ 0; */ ; - e_acsl_assert(2 == 0,(char *)"Assertion",(char *)"(2 == 0)",28); + e_acsl_assert(! (2 == 0),(char *)"Assertion", + (char *)"(2 == 0)",28); __e_acsl_var_11 = __e_acsl_x_7 / 2; if (! (__e_acsl_y_2 <= __e_acsl_var_11)) { break; } } @@ -198,7 +200,7 @@ int main(void) __e_acsl_x_7 ++; } e_acsl_end_loop8: ; - e_acsl_assert(! __e_acsl_var_8,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_8,(char *)"Assertion", (char *)"(\\forall int x; 0 <= x && x < 10 ==>\n (x%2 == 0 ==> (\\exists int y; (0 <= y && y <= x/2) && x == 2*y)))", 27); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif2.c index 0b9dc4a37ded6c9222b143a71610cda37534e148..b91ee4c1fa656207487ebafd34d204fcf85529c6 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif2.c @@ -81,9 +81,10 @@ extern int __gmpz_com(__mpz_struct * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -111,7 +112,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_3),(long)x); __e_acsl_var_4 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_2), (__mpz_struct const *)(__e_acsl_var_3)); - e_acsl_assert(! (__e_acsl_var_4 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4 == 0,(char *)"Assertion", (char *)"(-3 == x)",12); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -131,7 +132,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_6)); __e_acsl_var_8 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_5), (__mpz_struct const *)(__e_acsl_var_7)); - e_acsl_assert(! (__e_acsl_var_8 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_8 == 0,(char *)"Assertion", (char *)"(x == -3)",13); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_6)); @@ -149,7 +150,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_9)); __e_acsl_var_11 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_9), (__mpz_struct const *)(__e_acsl_var_10)); - e_acsl_assert(! (__e_acsl_var_11 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_11 != 0,(char *)"Assertion", (char *)"(0 != ~0)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_9)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); @@ -175,7 +176,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_15)); __e_acsl_var_17 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_14), (__mpz_struct const *)(__e_acsl_var_16)); - e_acsl_assert(! (__e_acsl_var_17 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_17 == 0,(char *)"Assertion", (char *)"(x+1 == -2)",16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_12)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_13)); @@ -204,7 +205,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_21)); __e_acsl_var_23 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_20), (__mpz_struct const *)(__e_acsl_var_22)); - e_acsl_assert(! (__e_acsl_var_23 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_23 == 0,(char *)"Assertion", (char *)"(x-1 == -4)",17); __gmpz_clear((__mpz_struct *)(__e_acsl_var_18)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_19)); @@ -233,7 +234,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_27)); __e_acsl_var_29 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_26), (__mpz_struct const *)(__e_acsl_var_28)); - e_acsl_assert(! (__e_acsl_var_29 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_29 == 0,(char *)"Assertion", (char *)"(x*3 == -9)",18); __gmpz_clear((__mpz_struct *)(__e_acsl_var_24)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_25)); @@ -259,7 +260,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_32)); __gmpz_init((__mpz_struct *)(__e_acsl_var_34)); /*@ assert 3 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_33 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_33 == 0),(char *)"Assertion", (char *)"(3 == 0)",19); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_30), @@ -270,7 +271,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_35)); __e_acsl_var_37 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_36)); - e_acsl_assert(! (__e_acsl_var_37 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_37 == 0,(char *)"Assertion", (char *)"(x/3 == -1)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_30)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_31)); @@ -295,7 +296,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_39)); __gmpz_init((__mpz_struct *)(__e_acsl_var_41)); /*@ assert 0xfffffffffff ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_40 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_40 == 0),(char *)"Assertion", (char *)"(0xfffffffffff == 0)",20); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_41), (__mpz_struct const *)(__e_acsl_var_38), @@ -303,7 +304,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_42),(long)1); __e_acsl_var_43 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_41), (__mpz_struct const *)(__e_acsl_var_42)); - e_acsl_assert(! (__e_acsl_var_43 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_43 == 0,(char *)"Assertion", (char *)"(0xfffffffffff/0xfffffffffff == 1)",20); __gmpz_clear((__mpz_struct *)(__e_acsl_var_38)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_39)); @@ -328,7 +329,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_46)); __gmpz_init((__mpz_struct *)(__e_acsl_var_48)); /*@ assert 2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_47 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_47 == 0),(char *)"Assertion", (char *)"(2 == 0)",21); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_48), (__mpz_struct const *)(__e_acsl_var_44), @@ -339,7 +340,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_49)); __e_acsl_var_51 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_48), (__mpz_struct const *)(__e_acsl_var_50)); - e_acsl_assert(! (__e_acsl_var_51 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_51 == 0,(char *)"Assertion", (char *)"(x%2 == -1)",21); __gmpz_clear((__mpz_struct *)(__e_acsl_var_44)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_45)); @@ -374,7 +375,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_56)); __gmpz_init((__mpz_struct *)(__e_acsl_var_58)); /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_57 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_57 == 0),(char *)"Assertion", (char *)"(-2 == 0)",22); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_58), (__mpz_struct const *)(__e_acsl_var_53), @@ -385,7 +386,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_59)); __e_acsl_var_61 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_58), (__mpz_struct const *)(__e_acsl_var_60)); - e_acsl_assert(! (__e_acsl_var_61 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_61 == 0,(char *)"Assertion", (char *)"(-3%-2 == -1)",22); __gmpz_clear((__mpz_struct *)(__e_acsl_var_52)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_53)); @@ -417,7 +418,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_65)); __gmpz_init((__mpz_struct *)(__e_acsl_var_67)); /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_66 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_66 == 0),(char *)"Assertion", (char *)"(-2 == 0)",23); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_67), (__mpz_struct const *)(__e_acsl_var_62), @@ -425,7 +426,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_68),(long)1); __e_acsl_var_69 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_67), (__mpz_struct const *)(__e_acsl_var_68)); - e_acsl_assert(! (__e_acsl_var_69 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_69 == 0,(char *)"Assertion", (char *)"(3%-2 == 1)",23); __gmpz_clear((__mpz_struct *)(__e_acsl_var_62)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_63)); @@ -486,7 +487,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_81)); __e_acsl_var_83 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_80), (__mpz_struct const *)(__e_acsl_var_82)); - e_acsl_assert(! (__e_acsl_var_83 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_83 == 0,(char *)"Assertion", (char *)"(((x*2+(3+y))-4)+(x-y) == -10)",25); __gmpz_clear((__mpz_struct *)(__e_acsl_var_70)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_71)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_result.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_result.c index 62a516a177ba29f73c31d685c2eb28ac892a7400..f53003ba290ee6075b71b666dea6677147e495d7 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_result.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_result.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -23,7 +24,7 @@ int f(int x) __e_acsl_var_2 = x; __e_acsl_var = x; x = 0; - e_acsl_assert(! (x == (int)((long long)__e_acsl_var - (long long)__e_acsl_var_2)), + e_acsl_assert(x == (int)((long long)__e_acsl_var - (long long)__e_acsl_var_2), (char *)"Postcondition", (char *)"(\\result == (int)(\\old(x)-\\old(x)))",7); return (x); @@ -33,8 +34,7 @@ int Y = 1; /*@ ensures \result ≡ Y; */ int g(int x) { - e_acsl_assert(! (x == Y),(char *)"Postcondition",(char *)"(\\result == Y)", - 18); + e_acsl_assert(x == Y,(char *)"Postcondition",(char *)"(\\result == Y)",18); return (x); } @@ -43,7 +43,7 @@ int h(void) { int __retres; __retres = 0; - e_acsl_assert(! (__retres == 0),(char *)"Postcondition", + e_acsl_assert(__retres == 0,(char *)"Postcondition", (char *)"(\\result == 0)",23); return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_result2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_result2.c index 0b9dc4a37ded6c9222b143a71610cda37534e148..b91ee4c1fa656207487ebafd34d204fcf85529c6 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_result2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_result2.c @@ -81,9 +81,10 @@ extern int __gmpz_com(__mpz_struct * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -111,7 +112,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_3),(long)x); __e_acsl_var_4 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_2), (__mpz_struct const *)(__e_acsl_var_3)); - e_acsl_assert(! (__e_acsl_var_4 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4 == 0,(char *)"Assertion", (char *)"(-3 == x)",12); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -131,7 +132,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_6)); __e_acsl_var_8 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_5), (__mpz_struct const *)(__e_acsl_var_7)); - e_acsl_assert(! (__e_acsl_var_8 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_8 == 0,(char *)"Assertion", (char *)"(x == -3)",13); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_6)); @@ -149,7 +150,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_9)); __e_acsl_var_11 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_9), (__mpz_struct const *)(__e_acsl_var_10)); - e_acsl_assert(! (__e_acsl_var_11 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_11 != 0,(char *)"Assertion", (char *)"(0 != ~0)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_9)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); @@ -175,7 +176,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_15)); __e_acsl_var_17 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_14), (__mpz_struct const *)(__e_acsl_var_16)); - e_acsl_assert(! (__e_acsl_var_17 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_17 == 0,(char *)"Assertion", (char *)"(x+1 == -2)",16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_12)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_13)); @@ -204,7 +205,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_21)); __e_acsl_var_23 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_20), (__mpz_struct const *)(__e_acsl_var_22)); - e_acsl_assert(! (__e_acsl_var_23 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_23 == 0,(char *)"Assertion", (char *)"(x-1 == -4)",17); __gmpz_clear((__mpz_struct *)(__e_acsl_var_18)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_19)); @@ -233,7 +234,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_27)); __e_acsl_var_29 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_26), (__mpz_struct const *)(__e_acsl_var_28)); - e_acsl_assert(! (__e_acsl_var_29 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_29 == 0,(char *)"Assertion", (char *)"(x*3 == -9)",18); __gmpz_clear((__mpz_struct *)(__e_acsl_var_24)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_25)); @@ -259,7 +260,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_32)); __gmpz_init((__mpz_struct *)(__e_acsl_var_34)); /*@ assert 3 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_33 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_33 == 0),(char *)"Assertion", (char *)"(3 == 0)",19); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_30), @@ -270,7 +271,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_35)); __e_acsl_var_37 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_36)); - e_acsl_assert(! (__e_acsl_var_37 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_37 == 0,(char *)"Assertion", (char *)"(x/3 == -1)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_30)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_31)); @@ -295,7 +296,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_39)); __gmpz_init((__mpz_struct *)(__e_acsl_var_41)); /*@ assert 0xfffffffffff ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_40 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_40 == 0),(char *)"Assertion", (char *)"(0xfffffffffff == 0)",20); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_41), (__mpz_struct const *)(__e_acsl_var_38), @@ -303,7 +304,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_42),(long)1); __e_acsl_var_43 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_41), (__mpz_struct const *)(__e_acsl_var_42)); - e_acsl_assert(! (__e_acsl_var_43 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_43 == 0,(char *)"Assertion", (char *)"(0xfffffffffff/0xfffffffffff == 1)",20); __gmpz_clear((__mpz_struct *)(__e_acsl_var_38)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_39)); @@ -328,7 +329,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_46)); __gmpz_init((__mpz_struct *)(__e_acsl_var_48)); /*@ assert 2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_47 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_47 == 0),(char *)"Assertion", (char *)"(2 == 0)",21); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_48), (__mpz_struct const *)(__e_acsl_var_44), @@ -339,7 +340,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_49)); __e_acsl_var_51 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_48), (__mpz_struct const *)(__e_acsl_var_50)); - e_acsl_assert(! (__e_acsl_var_51 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_51 == 0,(char *)"Assertion", (char *)"(x%2 == -1)",21); __gmpz_clear((__mpz_struct *)(__e_acsl_var_44)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_45)); @@ -374,7 +375,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_56)); __gmpz_init((__mpz_struct *)(__e_acsl_var_58)); /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_57 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_57 == 0),(char *)"Assertion", (char *)"(-2 == 0)",22); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_58), (__mpz_struct const *)(__e_acsl_var_53), @@ -385,7 +386,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_59)); __e_acsl_var_61 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_58), (__mpz_struct const *)(__e_acsl_var_60)); - e_acsl_assert(! (__e_acsl_var_61 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_61 == 0,(char *)"Assertion", (char *)"(-3%-2 == -1)",22); __gmpz_clear((__mpz_struct *)(__e_acsl_var_52)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_53)); @@ -417,7 +418,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_65)); __gmpz_init((__mpz_struct *)(__e_acsl_var_67)); /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_66 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_66 == 0),(char *)"Assertion", (char *)"(-2 == 0)",23); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_67), (__mpz_struct const *)(__e_acsl_var_62), @@ -425,7 +426,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_68),(long)1); __e_acsl_var_69 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_67), (__mpz_struct const *)(__e_acsl_var_68)); - e_acsl_assert(! (__e_acsl_var_69 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_69 == 0,(char *)"Assertion", (char *)"(3%-2 == 1)",23); __gmpz_clear((__mpz_struct *)(__e_acsl_var_62)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_63)); @@ -486,7 +487,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_81)); __e_acsl_var_83 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_80), (__mpz_struct const *)(__e_acsl_var_82)); - e_acsl_assert(! (__e_acsl_var_83 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_83 == 0,(char *)"Assertion", (char *)"(((x*2+(3+y))-4)+(x-y) == -10)",25); __gmpz_clear((__mpz_struct *)(__e_acsl_var_70)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_71)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_sizeof.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_sizeof.c index 435d1403d56eef3bc25dc5a71a39b1cd3d7d7ab2..859f8feea2c5624419188fd26c25d4af9c1299aa 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_sizeof.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_sizeof.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -21,10 +22,10 @@ int main(void) int x; x = 0; /*@ assert sizeof(int) ≡ sizeof(x); */ ; - e_acsl_assert(! (4 == 4),(char *)"Assertion", + e_acsl_assert(4 == 4,(char *)"Assertion", (char *)"(sizeof(int) == sizeof(x))",9); /*@ assert sizeof("totototototo") ≡ sizeof(char *); */ ; - e_acsl_assert(! (4 == 4),(char *)"Assertion", + e_acsl_assert(4 == 4,(char *)"Assertion", (char *)"(sizeof(\"totototototo\") == sizeof(char *))",10); __retres = 0; return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_sizeof2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_sizeof2.c index af77e709c2007fdb4248559050b8c08c52897113..409eb1b59d18a7d02291fd27ea3a708636575fba 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_sizeof2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_sizeof2.c @@ -24,9 +24,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -48,7 +49,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)4); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion", (char *)"(sizeof(int) == sizeof(x))",9); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -63,7 +64,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)4); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_6 == 0,(char *)"Assertion", (char *)"(sizeof(\"totototototo\") == sizeof(char *))",10); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_stmt_contract.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_stmt_contract.c index 6d26534fb7ed05ed9a75cea219307d118bbd8154..d283cc0885594cf2e604b4b1d6b416797e8c7bbf 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_stmt_contract.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_stmt_contract.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -23,26 +24,25 @@ int main(void) x = 0; y = 2; /*@ ensures x ≡ 1; */ - { - x = 1; - e_acsl_assert(! (x == 1),(char *)"Postcondition",(char *)"(x == 1)",9); + { x = 1; + e_acsl_assert(x == 1,(char *)"Postcondition",(char *)"(x == 1)",9); } /*@ ensures x ≡ 2; ensures y ≡ 2; */ { x = 2; - e_acsl_assert(! (x == 2),(char *)"Postcondition",(char *)"(x == 2)",12); - e_acsl_assert(! (y == 2),(char *)"Postcondition",(char *)"(y == 2)",13); + e_acsl_assert(x == 2,(char *)"Postcondition",(char *)"(x == 2)",12); + e_acsl_assert(y == 2,(char *)"Postcondition",(char *)"(y == 2)",13); } /*@ requires x ≡ 2; */ - e_acsl_assert(! (x == 2),(char *)"Precondition",(char *)"(x == 2)",16); + e_acsl_assert(x == 2,(char *)"Precondition",(char *)"(x == 2)",16); x ++; /*@ requires x ≡ 3; requires y ≡ 2; */ - e_acsl_assert(! (x == 3),(char *)"Precondition",(char *)"(x == 3)",19); - e_acsl_assert(! (y == 2),(char *)"Precondition",(char *)"(y == 2)",20); + e_acsl_assert(x == 3,(char *)"Precondition",(char *)"(x == 3)",19); + e_acsl_assert(y == 2,(char *)"Precondition",(char *)"(y == 2)",20); x += y; /*@ behavior b1: requires x ≡ 5; @@ -55,13 +55,13 @@ int main(void) */ { - e_acsl_assert(! (x == 5),(char *)"Precondition",(char *)"(x == 5)",24); - e_acsl_assert(! ((long long)x == (long long)3 + (long long)y), + e_acsl_assert(x == 5,(char *)"Precondition",(char *)"(x == 5)",24); + e_acsl_assert((long long)x == (long long)3 + (long long)y, (char *)"Precondition",(char *)"(x == 3+y)",27); - e_acsl_assert(! (y == 2),(char *)"Precondition",(char *)"(y == 2)",28); + e_acsl_assert(y == 2,(char *)"Precondition",(char *)"(y == 2)",28); x = 3; - e_acsl_assert(! (x == 3),(char *)"Postcondition",(char *)"(x == 3)",25); - e_acsl_assert(! ((long long)x == (long long)y + (long long)1), + e_acsl_assert(x == 3,(char *)"Postcondition",(char *)"(x == 3)",25); + e_acsl_assert((long long)x == (long long)y + (long long)1, (char *)"Postcondition",(char *)"(x == y+1)",29); } @@ -84,34 +84,34 @@ int main(void) int __e_acsl_var_5; if (! (x == 1)) { __e_acsl_var = 1; } else { __e_acsl_var = x == 0; } - e_acsl_assert(! __e_acsl_var,(char *)"Precondition", + e_acsl_assert(__e_acsl_var,(char *)"Precondition", (char *)"(x == 1 ==> x == 0)",34); if (x == 3) { __e_acsl_var_2 = y == 2; } else { __e_acsl_var_2 = 0; } if (! __e_acsl_var_2) { __e_acsl_var_3 = 1; } else { __e_acsl_var_3 = x == 3; } - e_acsl_assert(! __e_acsl_var_3,(char *)"Precondition", + e_acsl_assert(__e_acsl_var_3,(char *)"Precondition", (char *)"(x == 3 && y == 2 ==> x == 3)",38); if (x == 3) { __e_acsl_var_4 = y == 2; } else { __e_acsl_var_4 = 0; } if (! __e_acsl_var_4) { __e_acsl_var_5 = 1; } else { __e_acsl_var_5 = (long long)x + (long long)y == (long long)5; } - e_acsl_assert(! __e_acsl_var_5,(char *)"Precondition", + e_acsl_assert(__e_acsl_var_5,(char *)"Precondition", (char *)"(x == 3 && y == 2 ==> x+y == 5)",39); x += y; } /*@ requires x ≡ 5; */ - e_acsl_assert(! (x == 5),(char *)"Precondition",(char *)"(x == 5)",42); + e_acsl_assert(x == 5,(char *)"Precondition",(char *)"(x == 5)",42); /*@ requires y ≡ 2; */ - e_acsl_assert(! (y == 2),(char *)"Precondition",(char *)"(y == 2)",43); + e_acsl_assert(y == 2,(char *)"Precondition",(char *)"(y == 2)",43); x += y; /*@ requires x ≡ 7; ensures x ≡ 7; */ { - e_acsl_assert(! (x == 7),(char *)"Precondition",(char *)"(x == 7)",46); + e_acsl_assert(x == 7,(char *)"Precondition",(char *)"(x == 7)",46); __retres = 0; - e_acsl_assert(! (x == 7),(char *)"Postcondition",(char *)"(x == 7)",47); + e_acsl_assert(x == 7,(char *)"Postcondition",(char *)"(x == 7)",47); } return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_stmt_contract2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_stmt_contract2.c index 0b9dc4a37ded6c9222b143a71610cda37534e148..b91ee4c1fa656207487ebafd34d204fcf85529c6 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_stmt_contract2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_stmt_contract2.c @@ -81,9 +81,10 @@ extern int __gmpz_com(__mpz_struct * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -111,7 +112,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_3),(long)x); __e_acsl_var_4 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_2), (__mpz_struct const *)(__e_acsl_var_3)); - e_acsl_assert(! (__e_acsl_var_4 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4 == 0,(char *)"Assertion", (char *)"(-3 == x)",12); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -131,7 +132,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_6)); __e_acsl_var_8 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_5), (__mpz_struct const *)(__e_acsl_var_7)); - e_acsl_assert(! (__e_acsl_var_8 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_8 == 0,(char *)"Assertion", (char *)"(x == -3)",13); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_6)); @@ -149,7 +150,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_9)); __e_acsl_var_11 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_9), (__mpz_struct const *)(__e_acsl_var_10)); - e_acsl_assert(! (__e_acsl_var_11 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_11 != 0,(char *)"Assertion", (char *)"(0 != ~0)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_9)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); @@ -175,7 +176,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_15)); __e_acsl_var_17 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_14), (__mpz_struct const *)(__e_acsl_var_16)); - e_acsl_assert(! (__e_acsl_var_17 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_17 == 0,(char *)"Assertion", (char *)"(x+1 == -2)",16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_12)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_13)); @@ -204,7 +205,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_21)); __e_acsl_var_23 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_20), (__mpz_struct const *)(__e_acsl_var_22)); - e_acsl_assert(! (__e_acsl_var_23 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_23 == 0,(char *)"Assertion", (char *)"(x-1 == -4)",17); __gmpz_clear((__mpz_struct *)(__e_acsl_var_18)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_19)); @@ -233,7 +234,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_27)); __e_acsl_var_29 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_26), (__mpz_struct const *)(__e_acsl_var_28)); - e_acsl_assert(! (__e_acsl_var_29 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_29 == 0,(char *)"Assertion", (char *)"(x*3 == -9)",18); __gmpz_clear((__mpz_struct *)(__e_acsl_var_24)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_25)); @@ -259,7 +260,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_32)); __gmpz_init((__mpz_struct *)(__e_acsl_var_34)); /*@ assert 3 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_33 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_33 == 0),(char *)"Assertion", (char *)"(3 == 0)",19); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_30), @@ -270,7 +271,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_35)); __e_acsl_var_37 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_36)); - e_acsl_assert(! (__e_acsl_var_37 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_37 == 0,(char *)"Assertion", (char *)"(x/3 == -1)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_30)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_31)); @@ -295,7 +296,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_39)); __gmpz_init((__mpz_struct *)(__e_acsl_var_41)); /*@ assert 0xfffffffffff ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_40 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_40 == 0),(char *)"Assertion", (char *)"(0xfffffffffff == 0)",20); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_41), (__mpz_struct const *)(__e_acsl_var_38), @@ -303,7 +304,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_42),(long)1); __e_acsl_var_43 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_41), (__mpz_struct const *)(__e_acsl_var_42)); - e_acsl_assert(! (__e_acsl_var_43 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_43 == 0,(char *)"Assertion", (char *)"(0xfffffffffff/0xfffffffffff == 1)",20); __gmpz_clear((__mpz_struct *)(__e_acsl_var_38)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_39)); @@ -328,7 +329,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_46)); __gmpz_init((__mpz_struct *)(__e_acsl_var_48)); /*@ assert 2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_47 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_47 == 0),(char *)"Assertion", (char *)"(2 == 0)",21); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_48), (__mpz_struct const *)(__e_acsl_var_44), @@ -339,7 +340,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_49)); __e_acsl_var_51 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_48), (__mpz_struct const *)(__e_acsl_var_50)); - e_acsl_assert(! (__e_acsl_var_51 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_51 == 0,(char *)"Assertion", (char *)"(x%2 == -1)",21); __gmpz_clear((__mpz_struct *)(__e_acsl_var_44)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_45)); @@ -374,7 +375,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_56)); __gmpz_init((__mpz_struct *)(__e_acsl_var_58)); /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_57 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_57 == 0),(char *)"Assertion", (char *)"(-2 == 0)",22); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_58), (__mpz_struct const *)(__e_acsl_var_53), @@ -385,7 +386,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_59)); __e_acsl_var_61 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_58), (__mpz_struct const *)(__e_acsl_var_60)); - e_acsl_assert(! (__e_acsl_var_61 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_61 == 0,(char *)"Assertion", (char *)"(-3%-2 == -1)",22); __gmpz_clear((__mpz_struct *)(__e_acsl_var_52)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_53)); @@ -417,7 +418,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_65)); __gmpz_init((__mpz_struct *)(__e_acsl_var_67)); /*@ assert -2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_66 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_66 == 0),(char *)"Assertion", (char *)"(-2 == 0)",23); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_67), (__mpz_struct const *)(__e_acsl_var_62), @@ -425,7 +426,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_68),(long)1); __e_acsl_var_69 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_67), (__mpz_struct const *)(__e_acsl_var_68)); - e_acsl_assert(! (__e_acsl_var_69 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_69 == 0,(char *)"Assertion", (char *)"(3%-2 == 1)",23); __gmpz_clear((__mpz_struct *)(__e_acsl_var_62)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_63)); @@ -486,7 +487,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_81)); __e_acsl_var_83 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_80), (__mpz_struct const *)(__e_acsl_var_82)); - e_acsl_assert(! (__e_acsl_var_83 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_83 == 0,(char *)"Assertion", (char *)"(((x*2+(3+y))-4)+(x-y) == -10)",25); __gmpz_clear((__mpz_struct *)(__e_acsl_var_70)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_71)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_true.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_true.c index b410f3515677e9ed6a92be0d9e784318808c0780..7f65200db0b76ac11a9bf16e17c8cd6f5b2a9bcb 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_true.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_true.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -21,7 +22,7 @@ int main(void) int x; x = 0; /*@ assert \true; */ ; - e_acsl_assert(0,(char *)"Assertion",(char *)"(\\true)",9); + e_acsl_assert(1,(char *)"Assertion",(char *)"(\\true)",9); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_true2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_true2.c index b410f3515677e9ed6a92be0d9e784318808c0780..7f65200db0b76ac11a9bf16e17c8cd6f5b2a9bcb 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_true2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_true2.c @@ -5,9 +5,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -21,7 +22,7 @@ int main(void) int x; x = 0; /*@ assert \true; */ ; - e_acsl_assert(0,(char *)"Assertion",(char *)"(\\true)",9); + e_acsl_assert(1,(char *)"Assertion",(char *)"(\\true)",9); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef.c index 4435c8f153fc4996da12aa8a2ccec9fb9d5a2c05..415096f8544665e401ccb8ccf4c1bb39253c3987 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef.c @@ -6,9 +6,10 @@ typedef unsigned char uint8; extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -22,7 +23,7 @@ int main(void) uint8 x; x = (unsigned char)0; /*@ assert x ≡ 0; */ ; - e_acsl_assert(! ((int)x == 0),(char *)"Assertion",(char *)"(x == 0)",11); + e_acsl_assert((int)x == 0,(char *)"Assertion",(char *)"(x == 0)",11); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef2.c index 01a584305988d1d23a301311a68f7f54da80eca4..650b33b46c845d7aedfdab1ff2534eae219b83db 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef2.c @@ -29,9 +29,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -53,8 +54,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)0); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", - (char *)"(x == 0)",11); + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion",(char *)"(x == 0)", + 11); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.1.res.oracle index 5cc92d346d024fae95326f6accef4e47b84ae5a4..7dc50bdf0836d53c1d86de0f9360b21d721ffacf 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.1.res.oracle @@ -2,77 +2,59 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:233:[value] Assertion got status valid. +PROJECT_FILE.i:234:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:237. + Called from PROJECT_FILE.i:238. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:238. + Called from PROJECT_FILE.i:239. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:239. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:240. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:240. + Called from PROJECT_FILE.i:241. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear -PROJECT_FILE.i:245:[value] Assertion got status valid. +PROJECT_FILE.i:246:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:250. + Called from PROJECT_FILE.i:251. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:251. + Called from PROJECT_FILE.i:252. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:252. + Called from PROJECT_FILE.i:253. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:253. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:254. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_clear -PROJECT_FILE.i:259:[value] Assertion got status valid. +PROJECT_FILE.i:260:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_str <- main. - Called from PROJECT_FILE.i:263. + Called from PROJECT_FILE.i:264. PROJECT_FILE.i:86:[value] Function __gmpz_init_set_str: postcondition got status valid. [value] Done for function __gmpz_init_set_str [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:264. + Called from PROJECT_FILE.i:265. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:265. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:266. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:267. + Called from PROJECT_FILE.i:268. [value] Done for function __gmpz_clear [value] Recording results for main [value] done for function main @@ -111,9 +93,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -132,8 +115,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var),(long)0); __e_acsl_var_2 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var)); - e_acsl_assert(! (__e_acsl_var_2 == 0),(char *)"Assertion", - (char *)"(0 == 0)",9); + e_acsl_assert(__e_acsl_var_2 == 0,(char *)"Assertion",(char *)"(0 == 0)", + 9); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); } @@ -147,8 +130,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_4),(long)1); __e_acsl_var_5 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_3), (__mpz_struct const *)(__e_acsl_var_4)); - e_acsl_assert(! (__e_acsl_var_5 != 0),(char *)"Assertion", - (char *)"(0 != 1)",10); + e_acsl_assert(__e_acsl_var_5 != 0,(char *)"Assertion",(char *)"(0 != 1)", + 10); __gmpz_clear((__mpz_struct *)(__e_acsl_var_3)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); } @@ -161,7 +144,7 @@ int main(void) "1152921504606846975",10); __e_acsl_var_7 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_6), (__mpz_struct const *)(__e_acsl_var_6)); - e_acsl_assert(! (__e_acsl_var_7 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_7 == 0,(char *)"Assertion", (char *)"(1152921504606846975 == 0xfffffffffffffff)",11); __gmpz_clear((__mpz_struct *)(__e_acsl_var_6)); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.res.oracle index 59edb00daeaa0cc8c3f95905ce16e01f8cd4e9fc..a9e4db13f8de8a7f7e7c6abb04173d35bf161a72 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.res.oracle @@ -2,19 +2,20 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:233:[value] Assertion got status valid. +PROJECT_FILE.i:234:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:234. + Called from PROJECT_FILE.i:235. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:237:[value] Assertion got status valid. +PROJECT_FILE.i:238:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:238. + Called from PROJECT_FILE.i:239. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:240:[value] Assertion got status valid. +PROJECT_FILE.i:241:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:241. + Called from PROJECT_FILE.i:242. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -31,9 +32,10 @@ PROJECT_FILE.i:240:[value] Assertion got status valid. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -46,12 +48,12 @@ int main(void) int __retres; int x; /*@ assert 0 ≡ 0; */ ; - e_acsl_assert(! (0 == 0),(char *)"Assertion",(char *)"(0 == 0)",9); + e_acsl_assert(0 == 0,(char *)"Assertion",(char *)"(0 == 0)",9); x = 0; /*@ assert 0 ≢ 1; */ ; - e_acsl_assert(! (0 != 1),(char *)"Assertion",(char *)"(0 != 1)",10); + e_acsl_assert(0 != 1,(char *)"Assertion",(char *)"(0 != 1)",10); /*@ assert 1152921504606846975 ≡ 0xfffffffffffffff; */ ; - e_acsl_assert(! ((unsigned long long)1152921504606846975 == (unsigned long long)0xfffffffffffffff), + e_acsl_assert((unsigned long long)1152921504606846975 == (unsigned long long)0xfffffffffffffff, (char *)"Assertion", (char *)"(1152921504606846975 == 0xfffffffffffffff)",11); __retres = 0; diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/invariant.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/invariant.1.res.oracle index 7ff294b78c8adbacd5eb93749e581fa21d1609df..299111d306beea8f8b4cdeddba23288aee033be5 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/invariant.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/invariant.1.res.oracle @@ -2,1063 +2,866 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:237:[value] entering loop for the first time +PROJECT_FILE.i:238:[value] entering loop for the first time [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:262. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status invalid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_cmp -PROJECT_FILE.i:256:[value] assigning non deterministic value for the first time +PROJECT_FILE.i:257:[value] assigning non deterministic value for the first time [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:258. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:258. + Called from PROJECT_FILE.i:259. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:262. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. + Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:263. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:259. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:259. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:259. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:259. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:259. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:259. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:259. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:259. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:259. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:259. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:259. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:259. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:259. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:259. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:262. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear -PROJECT_FILE.i:267:[value] warning: 2's complement assumed for overflow [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_clear +PROJECT_FILE.i:268:[value] warning: 2's complement assumed for overflow +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:259. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear [value] Recording results for main [value] done for function main @@ -1093,9 +896,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -1136,7 +940,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); } else { __e_acsl_var_7 = 0; } - e_acsl_assert(! __e_acsl_var_7,(char *)"Invariant", + e_acsl_assert(__e_acsl_var_7,(char *)"Invariant", (char *)"(0 <= i && i < 10)",9); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -1152,7 +956,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_9),(long)x); __e_acsl_var_10 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_8), (__mpz_struct const *)(__e_acsl_var_9)); - e_acsl_assert(! (__e_acsl_var_10 <= 0),(char *)"Invariant", + e_acsl_assert(__e_acsl_var_10 <= 0,(char *)"Invariant", (char *)"(i <= x)",11); __gmpz_clear((__mpz_struct *)(__e_acsl_var_8)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_9)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/invariant.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/invariant.res.oracle index a7aa285d2e940754185329d84c710e2b72f43fcb..316b4936958676c714e641bf1b57592423c2e724 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/invariant.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/invariant.res.oracle @@ -2,226 +2,137 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:237:[value] entering loop for the first time +PROJECT_FILE.i:238:[value] entering loop for the first time [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:248:[value] assigning non deterministic value for the first time +PROJECT_FILE.i:249:[value] assigning non deterministic value for the first time [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:251. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:248:[value] warning: 2's complement assumed for overflow +PROJECT_FILE.i:249:[value] warning: 2's complement assumed for overflow [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:250. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:251. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -238,9 +149,10 @@ PROJECT_FILE.i:248:[value] warning: 2's complement assumed for overflow extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -262,13 +174,13 @@ int main(void) { int __e_acsl_var; if (0 <= i) { __e_acsl_var = i < 10; } else { __e_acsl_var = 0; } - e_acsl_assert(! __e_acsl_var,(char *)"Invariant", + e_acsl_assert(__e_acsl_var,(char *)"Invariant", (char *)"(0 <= i && i < 10)",9); } x += i; /*@ invariant i ≤ x; */ ; - e_acsl_assert(! (i <= x),(char *)"Invariant",(char *)"(i <= x)",11); + e_acsl_assert(i <= x,(char *)"Invariant",(char *)"(i <= x)",11); i ++; } } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/labeled_stmt.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/labeled_stmt.1.res.oracle index 353642ff86f588742cc5e231cdbcb8cded822ac7..65d07b88611e383765f9fa9912c8bdaf2d579252 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/labeled_stmt.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/labeled_stmt.1.res.oracle @@ -3,113 +3,89 @@ [value] Initial state computed [value] Values of globals at initialization X ∈ {0} -PROJECT_FILE.i:236:[value] Assertion got status valid. +PROJECT_FILE.i:237:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:241. + Called from PROJECT_FILE.i:242. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:242. + Called from PROJECT_FILE.i:243. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:243. + Called from PROJECT_FILE.i:244. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:245. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:245. + Called from PROJECT_FILE.i:246. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:263. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:264. + Called from PROJECT_FILE.i:265. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:265. + Called from PROJECT_FILE.i:266. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:266. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:267. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:267. + Called from PROJECT_FILE.i:268. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:268. + Called from PROJECT_FILE.i:269. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:272. + Called from PROJECT_FILE.i:273. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:275. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:276. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:276. + Called from PROJECT_FILE.i:277. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:290. + Called from PROJECT_FILE.i:291. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:291. + Called from PROJECT_FILE.i:292. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:292. + Called from PROJECT_FILE.i:293. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:293. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:294. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:294. + Called from PROJECT_FILE.i:295. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:295. + Called from PROJECT_FILE.i:296. [value] Done for function __gmpz_clear -PROJECT_FILE.i:230:[value] Function main: postcondition got status valid. +PROJECT_FILE.i:231:[value] Function main: postcondition got status valid. [value] Recording results for main [value] done for function main [value] ====== VALUES COMPUTED ====== @@ -143,9 +119,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -169,8 +146,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)0); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", - (char *)"(X == 0)",12); + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion",(char *)"(X == 0)", + 12); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); } @@ -192,7 +169,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)1); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_6 == 0,(char *)"Precondition", (char *)"(X == 1)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); @@ -203,7 +180,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_8),(long)2); __e_acsl_var_9 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_7), (__mpz_struct const *)(__e_acsl_var_8)); - e_acsl_assert(! (__e_acsl_var_9 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_9 == 0,(char *)"Postcondition", (char *)"(X == 2)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_7)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_8)); @@ -223,7 +200,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_11),(long)3); __e_acsl_var_12 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_10), (__mpz_struct const *)(__e_acsl_var_11)); - e_acsl_assert(! (__e_acsl_var_12 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_12 == 0,(char *)"Postcondition", (char *)"(X == 3)",9); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_11)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/labeled_stmt.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/labeled_stmt.res.oracle index 111f396d45280f9a914eebbbaca093936e925438..2b20402fe6d4972e3ae65f852ab1350eeed6061d 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/labeled_stmt.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/labeled_stmt.res.oracle @@ -3,24 +3,25 @@ [value] Initial state computed [value] Values of globals at initialization X ∈ {0} -PROJECT_FILE.i:236:[value] Assertion got status valid. +PROJECT_FILE.i:237:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:237. + Called from PROJECT_FILE.i:238. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:245. + Called from PROJECT_FILE.i:246. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:256. + Called from PROJECT_FILE.i:257. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:230:[value] Function main: postcondition got status valid. +PROJECT_FILE.i:231:[value] Function main: postcondition got status valid. [value] Recording results for main [value] done for function main [value] ====== VALUES COMPUTED ====== @@ -35,9 +36,10 @@ PROJECT_FILE.i:230:[value] Function main: postcondition got status valid. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -53,16 +55,16 @@ int main(void) goto L1; L1: /*@ assert X ≡ 0; */ ; - e_acsl_assert(! (X == 0),(char *)"Assertion",(char *)"(X == 0)",12); + e_acsl_assert(X == 0,(char *)"Assertion",(char *)"(X == 0)",12); X = 1; goto L2; L2: /*@ requires X ≡ 1; ensures X ≡ 2; */ { - e_acsl_assert(! (X == 1),(char *)"Precondition",(char *)"(X == 1)",14); + e_acsl_assert(X == 1,(char *)"Precondition",(char *)"(X == 1)",14); X = 2; - e_acsl_assert(! (X == 2),(char *)"Postcondition",(char *)"(X == 2)",14); + e_acsl_assert(X == 2,(char *)"Postcondition",(char *)"(X == 2)",14); } if (X) { @@ -70,7 +72,7 @@ int main(void) __retres = 0; goto return_label; } __retres = 0; - return_label: e_acsl_assert(! (X == 3),(char *)"Postcondition", + return_label: e_acsl_assert(X == 3,(char *)"Postcondition", (char *)"(X == 3)",9); return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.1.res.oracle index 3422c92b5f33a75ba6571d271cc08ccc9c5b242b..de0bc9ae17ed7e61ddb5e5132e67dfdbb5e0f861 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.1.res.oracle @@ -4,82 +4,77 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:236:[value] Assertion got status valid. +PROJECT_FILE.i:237:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:242. + Called from PROJECT_FILE.i:243. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:243. + Called from PROJECT_FILE.i:244. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:249. + Called from PROJECT_FILE.i:250. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:250. + Called from PROJECT_FILE.i:251. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:251. + Called from PROJECT_FILE.i:252. [value] Done for function __gmpz_cmp -PROJECT_FILE.i:252:[value] assigning non deterministic value for the first time +PROJECT_FILE.i:253:[value] assigning non deterministic value for the first time [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:257. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:258. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:258. + Called from PROJECT_FILE.i:259. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:259. + Called from PROJECT_FILE.i:260. [value] Done for function __gmpz_clear -PROJECT_FILE.i:263:[value] Assertion got status valid. +PROJECT_FILE.i:264:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:269. + Called from PROJECT_FILE.i:270. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:270. + Called from PROJECT_FILE.i:271. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:271. + Called from PROJECT_FILE.i:272. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:279. -[value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. Called from PROJECT_FILE.i:280. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. Called from PROJECT_FILE.i:281. [value] Done for function __gmpz_init_set_si -[value] computing for function __gmpz_cmp <- main. +[value] computing for function __gmpz_init_set_si <- main. Called from PROJECT_FILE.i:282. +[value] Done for function __gmpz_init_set_si +[value] computing for function __gmpz_cmp <- main. + Called from PROJECT_FILE.i:283. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:283. + Called from PROJECT_FILE.i:284. PROJECT_FILE.i:69:[value] Function __gmpz_init: postcondition got status valid. [value] Done for function __gmpz_init -PROJECT_FILE.i:284:[value] Assertion got status invalid (stopping propagation). +PROJECT_FILE.i:285:[value] Assertion got status invalid (stopping propagation). [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:295. + Called from PROJECT_FILE.i:296. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. @@ -115,12 +110,6 @@ PROJECT_FILE.i:302:[value] Assertion got status valid. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. Called from PROJECT_FILE.i:323. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. @@ -192,12 +181,6 @@ PROJECT_FILE.i:367:[value] Assertion got status valid. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. Called from PROJECT_FILE.i:388. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. @@ -284,12 +267,6 @@ PROJECT_FILE.i:432:[value] Assertion got status unknown. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. Called from PROJECT_FILE.i:463. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. @@ -340,12 +317,6 @@ PROJECT_FILE.i:469:[value] Assertion got status unknown. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. Called from PROJECT_FILE.i:500. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. @@ -396,12 +367,6 @@ PROJECT_FILE.i:506:[value] Assertion got status unknown. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. Called from PROJECT_FILE.i:537. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. @@ -467,12 +432,6 @@ PROJECT_FILE.i:543:[value] Assertion got status valid. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. Called from PROJECT_FILE.i:590. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. @@ -538,12 +497,6 @@ PROJECT_FILE.i:596:[value] Assertion got status valid. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. Called from PROJECT_FILE.i:643. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. @@ -595,12 +548,6 @@ PROJECT_FILE.i:651:[value] Assertion got status valid. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. Called from PROJECT_FILE.i:685. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. @@ -651,12 +598,6 @@ PROJECT_FILE.i:692:[value] Assertion got status valid. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. Called from PROJECT_FILE.i:726. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. @@ -710,9 +651,10 @@ extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -750,7 +692,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); } else { __e_acsl_var_7 = 0; } - e_acsl_assert(! __e_acsl_var_7,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_7,(char *)"Assertion", (char *)"(x == 0 && y == 1)",11); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -780,7 +722,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_13)); __gmpz_init((__mpz_struct *)(__e_acsl_var_15)); /*@ assert 0 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_14 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_14 == 0),(char *)"Assertion", (char *)"(0 == 0)",12); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_15), (__mpz_struct const *)(__e_acsl_var_12), @@ -794,7 +736,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_15)); } else { __e_acsl_var_17 = 0; } - e_acsl_assert(! (! __e_acsl_var_17),(char *)"Assertion", + e_acsl_assert(! __e_acsl_var_17,(char *)"Assertion", (char *)"(!(x != 0 && y == 1/0))",12); __gmpz_clear((__mpz_struct *)(__e_acsl_var_8)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_9)); @@ -823,7 +765,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_21)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_22)); } - e_acsl_assert(! __e_acsl_var_24,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_24,(char *)"Assertion", (char *)"(y == 1 || x == 1)",13); __gmpz_clear((__mpz_struct *)(__e_acsl_var_18)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_19)); @@ -854,7 +796,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_30)); __gmpz_init((__mpz_struct *)(__e_acsl_var_32)); /*@ assert 0 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_31 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_31 == 0),(char *)"Assertion", (char *)"(0 == 0)",14); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_32), (__mpz_struct const *)(__e_acsl_var_29), @@ -867,7 +809,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_30)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_32)); } - e_acsl_assert(! __e_acsl_var_34,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_34,(char *)"Assertion", (char *)"(x == 0 || y == 1/0)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_25)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_26)); @@ -896,7 +838,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_38)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_39)); } - e_acsl_assert(! __e_acsl_var_41,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_41,(char *)"Assertion", (char *)"(x == 0 ==> y == 1)",15); __gmpz_clear((__mpz_struct *)(__e_acsl_var_35)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_36)); @@ -927,7 +869,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_47)); __gmpz_init((__mpz_struct *)(__e_acsl_var_49)); /*@ assert 0 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_48 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_48 == 0),(char *)"Assertion", (char *)"(0 == 0)",16); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_49), (__mpz_struct const *)(__e_acsl_var_46), @@ -940,7 +882,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_47)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_49)); } - e_acsl_assert(! __e_acsl_var_51,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_51,(char *)"Assertion", (char *)"(x == 1 ==> y == 1/0)",16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_42)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_43)); @@ -980,7 +922,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_58)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_59)); } - e_acsl_assert(! __e_acsl_var_61,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_61,(char *)"Assertion", (char *)"(x!=0? x != 0: y != 0)",17); __gmpz_clear((__mpz_struct *)(__e_acsl_var_52)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_53)); @@ -1020,7 +962,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_68)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_69)); } - e_acsl_assert(! __e_acsl_var_71,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_71,(char *)"Assertion", (char *)"(y!=0? y != 0: x != 0)",18); __gmpz_clear((__mpz_struct *)(__e_acsl_var_62)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_63)); @@ -1060,7 +1002,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_78)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_79)); } - e_acsl_assert(! __e_acsl_var_81,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_81,(char *)"Assertion", (char *)"(x==1? x == 18: x == 0)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_72)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_73)); @@ -1117,7 +1059,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_90)); } else { __e_acsl_var_96 = 0; } - e_acsl_assert(! __e_acsl_var_96,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_96,(char *)"Assertion", (char *)"(x == 2 <==> y == 3)",22); __gmpz_clear((__mpz_struct *)(__e_acsl_var_82)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_83)); @@ -1174,7 +1116,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_105)); } else { __e_acsl_var_111 = 0; } - e_acsl_assert(! __e_acsl_var_111,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_111,(char *)"Assertion", (char *)"(x == 0 <==> y == 1)",23); __gmpz_clear((__mpz_struct *)(__e_acsl_var_97)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_98)); @@ -1218,7 +1160,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_119)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_120)); } - e_acsl_assert(! __e_acsl_var_122,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_122,(char *)"Assertion", (char *)"((x != 0 && y != 0) || y != 0)",27); __gmpz_clear((__mpz_struct *)(__e_acsl_var_112)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_113)); @@ -1261,7 +1203,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_131)); } else { __e_acsl_var_133 = 0; } - e_acsl_assert(! __e_acsl_var_133,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_133,(char *)"Assertion", (char *)"((x != 0 || y != 0) && y == 1)",28); __gmpz_clear((__mpz_struct *)(__e_acsl_var_123)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_124)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.res.oracle index c01ed32c64816b03e2ea7d777edb25f93b155cba..4008dc6b905a9957960cb9b665bd8b56c687af2d 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.res.oracle @@ -2,14 +2,15 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:236:[value] Assertion got status valid. +PROJECT_FILE.i:237:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:240. + Called from PROJECT_FILE.i:241. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:244:[value] Assertion got status valid. +PROJECT_FILE.i:245:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert PROJECT_FILE.i:260:[value] Assertion got status valid. @@ -87,9 +88,10 @@ PROJECT_FILE.i:386:[value] Assertion got status valid. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -108,7 +110,7 @@ int main(void) { int __e_acsl_var; if (x == 0) { __e_acsl_var = y == 1; } else { __e_acsl_var = 0; } - e_acsl_assert(! __e_acsl_var,(char *)"Assertion", + e_acsl_assert(__e_acsl_var,(char *)"Assertion", (char *)"(x == 0 && y == 1)",11); } @@ -118,12 +120,12 @@ int main(void) if (x != 0) { int __e_acsl_var_2; /*@ assert 0 ≢ 0; */ ; - e_acsl_assert(0 == 0,(char *)"Assertion",(char *)"(0 == 0)",12); + e_acsl_assert(! (0 == 0),(char *)"Assertion",(char *)"(0 == 0)",12); __e_acsl_var_2 = 1 / 0; __e_acsl_var_3 = y == __e_acsl_var_2; } else { __e_acsl_var_3 = 0; } - e_acsl_assert(! (! __e_acsl_var_3),(char *)"Assertion", + e_acsl_assert(! __e_acsl_var_3,(char *)"Assertion", (char *)"(!(x != 0 && y == 1/0))",12); } @@ -131,7 +133,7 @@ int main(void) { int __e_acsl_var_4; if (y == 1) { __e_acsl_var_4 = 1; } else { __e_acsl_var_4 = x == 1; } - e_acsl_assert(! __e_acsl_var_4,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4,(char *)"Assertion", (char *)"(y == 1 || x == 1)",13); } @@ -142,11 +144,11 @@ int main(void) else { int __e_acsl_var_5; /*@ assert 0 ≢ 0; */ ; - e_acsl_assert(0 == 0,(char *)"Assertion",(char *)"(0 == 0)",14); + e_acsl_assert(! (0 == 0),(char *)"Assertion",(char *)"(0 == 0)",14); __e_acsl_var_5 = 1 / 0; __e_acsl_var_6 = y == __e_acsl_var_5; } - e_acsl_assert(! __e_acsl_var_6,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_6,(char *)"Assertion", (char *)"(x == 0 || y == 1/0)",14); } @@ -154,7 +156,7 @@ int main(void) { int __e_acsl_var_7; if (! (x == 0)) { __e_acsl_var_7 = 1; } else { __e_acsl_var_7 = y == 1; } - e_acsl_assert(! __e_acsl_var_7,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_7,(char *)"Assertion", (char *)"(x == 0 ==> y == 1)",15); } @@ -165,11 +167,11 @@ int main(void) else { int __e_acsl_var_8; /*@ assert 0 ≢ 0; */ ; - e_acsl_assert(0 == 0,(char *)"Assertion",(char *)"(0 == 0)",16); + e_acsl_assert(! (0 == 0),(char *)"Assertion",(char *)"(0 == 0)",16); __e_acsl_var_8 = 1 / 0; __e_acsl_var_9 = y == __e_acsl_var_8; } - e_acsl_assert(! __e_acsl_var_9,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_9,(char *)"Assertion", (char *)"(x == 1 ==> y == 1/0)",16); } @@ -177,7 +179,7 @@ int main(void) { int __e_acsl_var_10; if (x != 0) { __e_acsl_var_10 = x != 0; } else { __e_acsl_var_10 = y != 0; } - e_acsl_assert(! __e_acsl_var_10,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_10,(char *)"Assertion", (char *)"(x!=0? x != 0: y != 0)",17); } @@ -185,7 +187,7 @@ int main(void) { int __e_acsl_var_11; if (y != 0) { __e_acsl_var_11 = y != 0; } else { __e_acsl_var_11 = x != 0; } - e_acsl_assert(! __e_acsl_var_11,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_11,(char *)"Assertion", (char *)"(y!=0? y != 0: x != 0)",18); } @@ -193,7 +195,7 @@ int main(void) { int __e_acsl_var_12; if (x == 1) { __e_acsl_var_12 = x == 18; } else { __e_acsl_var_12 = x == 0; } - e_acsl_assert(! __e_acsl_var_12,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_12,(char *)"Assertion", (char *)"(x==1? x == 18: x == 0)",19); } @@ -210,7 +212,7 @@ int main(void) __e_acsl_var_15 = __e_acsl_var_14; } else { __e_acsl_var_15 = 0; } - e_acsl_assert(! __e_acsl_var_15,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_15,(char *)"Assertion", (char *)"(x == 2 <==> y == 3)",22); } @@ -227,7 +229,7 @@ int main(void) __e_acsl_var_18 = __e_acsl_var_17; } else { __e_acsl_var_18 = 0; } - e_acsl_assert(! __e_acsl_var_18,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_18,(char *)"Assertion", (char *)"(x == 0 <==> y == 1)",23); } @@ -235,7 +237,7 @@ int main(void) { int __e_acsl_var_19; if (x != 0) { __e_acsl_var_19 = x; } else { __e_acsl_var_19 = y; } - e_acsl_assert(! ((__e_acsl_var_19 != 0) == (x == 0)),(char *)"Assertion", + e_acsl_assert((__e_acsl_var_19 != 0) == (x == 0),(char *)"Assertion", (char *)"(((x!=0? x: y)!=0) == (x==0))",26); } @@ -247,7 +249,7 @@ int main(void) else { __e_acsl_var_20 = 0; } if (__e_acsl_var_20) { __e_acsl_var_21 = 1; } else { __e_acsl_var_21 = y != 0; } - e_acsl_assert(! __e_acsl_var_21,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_21,(char *)"Assertion", (char *)"((x != 0 && y != 0) || y != 0)",27); } @@ -259,7 +261,7 @@ int main(void) else { __e_acsl_var_22 = y != 0; } if (__e_acsl_var_22) { __e_acsl_var_23 = y == 1; } else { __e_acsl_var_23 = 0; } - e_acsl_assert(! __e_acsl_var_23,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_23,(char *)"Assertion", (char *)"((x != 0 || y != 0) && y == 1)",28); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/linear_search.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/linear_search.1.res.oracle index 54eabbab4bbee734ae289ebb6748279b21438743..081c6fe342cce706e1d010f479d73aa3dbdb81aa 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/linear_search.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/linear_search.1.res.oracle @@ -10,73 +10,70 @@ tests/e-acsl-runtime/linear_search.i:14:[e-acsl] warning: missing guard for ensu [value] Initial state computed [value] Values of globals at initialization A[0..9] ∈ {0} -PROJECT_FILE.i:488:[value] entering loop for the first time -PROJECT_FILE.i:491:[value] assigning non deterministic value for the first time +PROJECT_FILE.i:489:[value] entering loop for the first time +PROJECT_FILE.i:492:[value] assigning non deterministic value for the first time [value] computing for function search <- main. - Called from PROJECT_FILE.i:494. -PROJECT_FILE.i:230:[value] Function search: precondition got status unknown. + Called from PROJECT_FILE.i:495. +PROJECT_FILE.i:231:[value] Function search: precondition got status unknown. [value] computing for function __gmpz_init <- search <- main. - Called from PROJECT_FILE.i:251. + Called from PROJECT_FILE.i:252. PROJECT_FILE.i:69:[value] Function __gmpz_init: postcondition got status valid. [value] Done for function __gmpz_init [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_set <- search <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. PROJECT_FILE.i:94:[value] Function __gmpz_set: precondition got status valid. PROJECT_FILE.i:95:[value] Function __gmpz_set: precondition got status valid. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:256. + Called from PROJECT_FILE.i:257. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear -PROJECT_FILE.i:259:[value] entering loop for the first time +PROJECT_FILE.i:260:[value] entering loop for the first time [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:263. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- search <- main. - Called from PROJECT_FILE.i:264. + Called from PROJECT_FILE.i:265. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:267. + Called from PROJECT_FILE.i:268. [value] Done for function __gmpz_clear [value] computing for function __gmpz_get_ui <- search <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. PROJECT_FILE.i:180:[value] Function __gmpz_get_ui: precondition got status valid. [value] Done for function __gmpz_get_ui -PROJECT_FILE.i:279:[kernel] warning: accessing out of bounds index [0..4294967295]. assert __e_acsl_var_2 < 10; +PROJECT_FILE.i:280:[kernel] warning: accessing out of bounds index [0..4294967295]. assert __e_acsl_var_2 < 10; [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:279. + Called from PROJECT_FILE.i:280. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:280. + Called from PROJECT_FILE.i:281. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- search <- main. - Called from PROJECT_FILE.i:281. + Called from PROJECT_FILE.i:282. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- search <- main. - Called from PROJECT_FILE.i:282. + Called from PROJECT_FILE.i:283. PROJECT_FILE.i:133:[value] Function __gmpz_add: precondition got status valid. PROJECT_FILE.i:134:[value] Function __gmpz_add: precondition got status valid. PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid. [value] Done for function __gmpz_add [value] computing for function __gmpz_get_ui <- search <- main. - Called from PROJECT_FILE.i:283. + Called from PROJECT_FILE.i:284. [value] Done for function __gmpz_get_ui -PROJECT_FILE.i:284:[kernel] warning: accessing out of bounds index [0..4294967295]. assert __e_acsl_var_6 < 10; +PROJECT_FILE.i:285:[kernel] warning: accessing out of bounds index [0..4294967295]. assert __e_acsl_var_6 < 10; [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:284. + Called from PROJECT_FILE.i:285. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- search <- main. - Called from PROJECT_FILE.i:285. -[value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- search <- main. Called from PROJECT_FILE.i:286. -[value] Done for function __gmpz_clear +[value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- search <- main. Called from PROJECT_FILE.i:287. [value] Done for function __gmpz_clear @@ -86,297 +83,273 @@ PROJECT_FILE.i:284:[kernel] warning: accessing out of bounds index [0..429496729 [value] computing for function __gmpz_clear <- search <- main. Called from PROJECT_FILE.i:289. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- search <- main. + Called from PROJECT_FILE.i:290. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:299. + Called from PROJECT_FILE.i:300. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- search <- main. - Called from PROJECT_FILE.i:300. + Called from PROJECT_FILE.i:301. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- search <- main. - Called from PROJECT_FILE.i:301. + Called from PROJECT_FILE.i:302. [value] Done for function __gmpz_add [value] computing for function __gmpz_set <- search <- main. - Called from PROJECT_FILE.i:302. + Called from PROJECT_FILE.i:303. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:303. + Called from PROJECT_FILE.i:304. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:304. + Called from PROJECT_FILE.i:305. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:309. -[value] computing for function printf <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:310. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:312. + Called from PROJECT_FILE.i:313. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init <- search <- main. - Called from PROJECT_FILE.i:317. + Called from PROJECT_FILE.i:318. [value] Done for function __gmpz_init [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:320. + Called from PROJECT_FILE.i:321. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_set <- search <- main. - Called from PROJECT_FILE.i:321. + Called from PROJECT_FILE.i:322. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:322. + Called from PROJECT_FILE.i:323. [value] Done for function __gmpz_clear -PROJECT_FILE.i:325:[value] entering loop for the first time +PROJECT_FILE.i:326:[value] entering loop for the first time [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:329. + Called from PROJECT_FILE.i:330. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- search <- main. - Called from PROJECT_FILE.i:330. + Called from PROJECT_FILE.i:331. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:333. + Called from PROJECT_FILE.i:334. [value] Done for function __gmpz_clear [value] computing for function __gmpz_get_ui <- search <- main. - Called from PROJECT_FILE.i:341. + Called from PROJECT_FILE.i:342. [value] Done for function __gmpz_get_ui -PROJECT_FILE.i:342:[kernel] warning: accessing out of bounds index [0..4294967295]. assert __e_acsl_var_30 < 10; +PROJECT_FILE.i:343:[kernel] warning: accessing out of bounds index [0..4294967295]. assert __e_acsl_var_30 < 10; [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:342. + Called from PROJECT_FILE.i:343. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:343. + Called from PROJECT_FILE.i:344. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- search <- main. - Called from PROJECT_FILE.i:344. + Called from PROJECT_FILE.i:345. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:345. + Called from PROJECT_FILE.i:346. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:346. + Called from PROJECT_FILE.i:347. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:356. + Called from PROJECT_FILE.i:357. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- search <- main. - Called from PROJECT_FILE.i:357. + Called from PROJECT_FILE.i:358. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- search <- main. - Called from PROJECT_FILE.i:358. + Called from PROJECT_FILE.i:359. [value] Done for function __gmpz_add [value] computing for function __gmpz_set <- search <- main. - Called from PROJECT_FILE.i:359. + Called from PROJECT_FILE.i:360. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:360. + Called from PROJECT_FILE.i:361. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:361. + Called from PROJECT_FILE.i:362. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:367. + Called from PROJECT_FILE.i:368. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init <- search <- main. - Called from PROJECT_FILE.i:374. + Called from PROJECT_FILE.i:375. [value] Done for function __gmpz_init [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:377. + Called from PROJECT_FILE.i:378. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_set <- search <- main. - Called from PROJECT_FILE.i:378. + Called from PROJECT_FILE.i:379. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:379. + Called from PROJECT_FILE.i:380. [value] Done for function __gmpz_clear -PROJECT_FILE.i:382:[value] entering loop for the first time +PROJECT_FILE.i:383:[value] entering loop for the first time [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:386. + Called from PROJECT_FILE.i:387. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- search <- main. - Called from PROJECT_FILE.i:387. + Called from PROJECT_FILE.i:388. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:390. + Called from PROJECT_FILE.i:391. [value] Done for function __gmpz_clear [value] computing for function __gmpz_get_ui <- search <- main. - Called from PROJECT_FILE.i:398. + Called from PROJECT_FILE.i:399. [value] Done for function __gmpz_get_ui -PROJECT_FILE.i:399:[kernel] warning: accessing out of bounds index [0..4294967295]. assert __e_acsl_var_15 < 10; +PROJECT_FILE.i:400:[kernel] warning: accessing out of bounds index [0..4294967295]. assert __e_acsl_var_15 < 10; [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:399. + Called from PROJECT_FILE.i:400. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:400. + Called from PROJECT_FILE.i:401. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- search <- main. - Called from PROJECT_FILE.i:401. + Called from PROJECT_FILE.i:402. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:402. + Called from PROJECT_FILE.i:403. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:403. + Called from PROJECT_FILE.i:404. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:413. + Called from PROJECT_FILE.i:414. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- search <- main. - Called from PROJECT_FILE.i:414. + Called from PROJECT_FILE.i:415. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- search <- main. - Called from PROJECT_FILE.i:415. + Called from PROJECT_FILE.i:416. [value] Done for function __gmpz_add [value] computing for function __gmpz_set <- search <- main. - Called from PROJECT_FILE.i:416. + Called from PROJECT_FILE.i:417. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:417. + Called from PROJECT_FILE.i:418. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:418. + Called from PROJECT_FILE.i:419. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:424. + Called from PROJECT_FILE.i:425. [value] Done for function __gmpz_clear -PROJECT_FILE.i:430:[value] entering loop for the first time +PROJECT_FILE.i:431:[value] entering loop for the first time [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:452. + Called from PROJECT_FILE.i:453. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:453. + Called from PROJECT_FILE.i:454. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- search <- main. - Called from PROJECT_FILE.i:454. + Called from PROJECT_FILE.i:455. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:456. + Called from PROJECT_FILE.i:457. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:457. + Called from PROJECT_FILE.i:458. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:459. -[value] computing for function printf <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:460. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:467. + Called from PROJECT_FILE.i:468. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:468. + Called from PROJECT_FILE.i:469. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- search <- main. - Called from PROJECT_FILE.i:469. + Called from PROJECT_FILE.i:470. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:471. + Called from PROJECT_FILE.i:472. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:472. + Called from PROJECT_FILE.i:473. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:474. -[value] computing for function printf <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:475. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:233:[value] Function search, behavior exists: postcondition got status unknown. -PROJECT_FILE.i:233:[value] Function search, behavior exists: postcondition got status unknown, but it is unknown if the behavior is active. -PROJECT_FILE.i:237:[value] Function search, behavior not_exists: postcondition got status unknown. -PROJECT_FILE.i:237:[value] Function search, behavior not_exists: postcondition got status unknown, but it is unknown if the behavior is active. +PROJECT_FILE.i:234:[value] Function search, behavior exists: postcondition got status unknown. +PROJECT_FILE.i:234:[value] Function search, behavior exists: postcondition got status unknown, but it is unknown if the behavior is active. +PROJECT_FILE.i:238:[value] Function search, behavior not_exists: postcondition got status unknown. +PROJECT_FILE.i:238:[value] Function search, behavior not_exists: postcondition got status unknown, but it is unknown if the behavior is active. [value] Recording results for search [value] Done for function search -PROJECT_FILE.i:495:[value] Assertion got status unknown. +PROJECT_FILE.i:496:[value] Assertion got status unknown. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:500. + Called from PROJECT_FILE.i:501. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:501. + Called from PROJECT_FILE.i:502. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:502. + Called from PROJECT_FILE.i:503. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:503. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:504. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:504. + Called from PROJECT_FILE.i:505. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:505. + Called from PROJECT_FILE.i:506. [value] Done for function __gmpz_clear [value] computing for function search <- main. - Called from PROJECT_FILE.i:509. + Called from PROJECT_FILE.i:510. [value] computing for function __gmpz_init <- search <- main. - Called from PROJECT_FILE.i:251. + Called from PROJECT_FILE.i:252. [value] Done for function __gmpz_init [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_set <- search <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:256. + Called from PROJECT_FILE.i:257. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:263. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- search <- main. - Called from PROJECT_FILE.i:264. + Called from PROJECT_FILE.i:265. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:267. + Called from PROJECT_FILE.i:268. [value] Done for function __gmpz_clear [value] computing for function __gmpz_get_ui <- search <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_get_ui -PROJECT_FILE.i:279:[value] Assertion got status unknown. +PROJECT_FILE.i:280:[value] Assertion got status unknown. [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:279. + Called from PROJECT_FILE.i:280. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:280. + Called from PROJECT_FILE.i:281. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- search <- main. - Called from PROJECT_FILE.i:281. + Called from PROJECT_FILE.i:282. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- search <- main. - Called from PROJECT_FILE.i:282. + Called from PROJECT_FILE.i:283. [value] Done for function __gmpz_add [value] computing for function __gmpz_get_ui <- search <- main. - Called from PROJECT_FILE.i:283. + Called from PROJECT_FILE.i:284. [value] Done for function __gmpz_get_ui -PROJECT_FILE.i:284:[value] Assertion got status unknown. +PROJECT_FILE.i:285:[value] Assertion got status unknown. [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:284. + Called from PROJECT_FILE.i:285. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- search <- main. - Called from PROJECT_FILE.i:285. -[value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- search <- main. Called from PROJECT_FILE.i:286. -[value] Done for function __gmpz_clear +[value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- search <- main. Called from PROJECT_FILE.i:287. [value] Done for function __gmpz_clear @@ -386,236 +359,215 @@ PROJECT_FILE.i:284:[value] Assertion got status unknown. [value] computing for function __gmpz_clear <- search <- main. Called from PROJECT_FILE.i:289. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- search <- main. + Called from PROJECT_FILE.i:290. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:299. + Called from PROJECT_FILE.i:300. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- search <- main. - Called from PROJECT_FILE.i:300. + Called from PROJECT_FILE.i:301. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- search <- main. - Called from PROJECT_FILE.i:301. + Called from PROJECT_FILE.i:302. [value] Done for function __gmpz_add [value] computing for function __gmpz_set <- search <- main. - Called from PROJECT_FILE.i:302. + Called from PROJECT_FILE.i:303. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:303. + Called from PROJECT_FILE.i:304. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:304. + Called from PROJECT_FILE.i:305. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:309. -[value] computing for function printf <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:310. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:312. + Called from PROJECT_FILE.i:313. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init <- search <- main. - Called from PROJECT_FILE.i:317. + Called from PROJECT_FILE.i:318. [value] Done for function __gmpz_init [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:320. + Called from PROJECT_FILE.i:321. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_set <- search <- main. - Called from PROJECT_FILE.i:321. + Called from PROJECT_FILE.i:322. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:322. + Called from PROJECT_FILE.i:323. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:329. + Called from PROJECT_FILE.i:330. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- search <- main. - Called from PROJECT_FILE.i:330. + Called from PROJECT_FILE.i:331. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:333. + Called from PROJECT_FILE.i:334. [value] Done for function __gmpz_clear [value] computing for function __gmpz_get_ui <- search <- main. - Called from PROJECT_FILE.i:341. + Called from PROJECT_FILE.i:342. [value] Done for function __gmpz_get_ui -PROJECT_FILE.i:342:[value] Assertion got status unknown. +PROJECT_FILE.i:343:[value] Assertion got status unknown. [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:342. + Called from PROJECT_FILE.i:343. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:343. + Called from PROJECT_FILE.i:344. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- search <- main. - Called from PROJECT_FILE.i:344. + Called from PROJECT_FILE.i:345. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:345. + Called from PROJECT_FILE.i:346. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:346. + Called from PROJECT_FILE.i:347. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:356. + Called from PROJECT_FILE.i:357. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- search <- main. - Called from PROJECT_FILE.i:357. + Called from PROJECT_FILE.i:358. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- search <- main. - Called from PROJECT_FILE.i:358. + Called from PROJECT_FILE.i:359. [value] Done for function __gmpz_add [value] computing for function __gmpz_set <- search <- main. - Called from PROJECT_FILE.i:359. + Called from PROJECT_FILE.i:360. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:360. + Called from PROJECT_FILE.i:361. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:361. + Called from PROJECT_FILE.i:362. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:367. + Called from PROJECT_FILE.i:368. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init <- search <- main. - Called from PROJECT_FILE.i:374. + Called from PROJECT_FILE.i:375. [value] Done for function __gmpz_init [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:377. + Called from PROJECT_FILE.i:378. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_set <- search <- main. - Called from PROJECT_FILE.i:378. + Called from PROJECT_FILE.i:379. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:379. + Called from PROJECT_FILE.i:380. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:386. + Called from PROJECT_FILE.i:387. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- search <- main. - Called from PROJECT_FILE.i:387. + Called from PROJECT_FILE.i:388. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:390. + Called from PROJECT_FILE.i:391. [value] Done for function __gmpz_clear [value] computing for function __gmpz_get_ui <- search <- main. - Called from PROJECT_FILE.i:398. + Called from PROJECT_FILE.i:399. [value] Done for function __gmpz_get_ui -PROJECT_FILE.i:399:[value] Assertion got status unknown. +PROJECT_FILE.i:400:[value] Assertion got status unknown. [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:399. + Called from PROJECT_FILE.i:400. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:400. + Called from PROJECT_FILE.i:401. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- search <- main. - Called from PROJECT_FILE.i:401. + Called from PROJECT_FILE.i:402. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:402. + Called from PROJECT_FILE.i:403. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:403. + Called from PROJECT_FILE.i:404. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:413. + Called from PROJECT_FILE.i:414. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- search <- main. - Called from PROJECT_FILE.i:414. + Called from PROJECT_FILE.i:415. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- search <- main. - Called from PROJECT_FILE.i:415. + Called from PROJECT_FILE.i:416. [value] Done for function __gmpz_add [value] computing for function __gmpz_set <- search <- main. - Called from PROJECT_FILE.i:416. + Called from PROJECT_FILE.i:417. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:417. + Called from PROJECT_FILE.i:418. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:418. + Called from PROJECT_FILE.i:419. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:424. + Called from PROJECT_FILE.i:425. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:452. + Called from PROJECT_FILE.i:453. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:453. + Called from PROJECT_FILE.i:454. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- search <- main. - Called from PROJECT_FILE.i:454. + Called from PROJECT_FILE.i:455. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:456. + Called from PROJECT_FILE.i:457. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:457. + Called from PROJECT_FILE.i:458. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:459. -[value] computing for function printf <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:460. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:467. + Called from PROJECT_FILE.i:468. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- search <- main. - Called from PROJECT_FILE.i:468. + Called from PROJECT_FILE.i:469. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- search <- main. - Called from PROJECT_FILE.i:469. + Called from PROJECT_FILE.i:470. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:471. + Called from PROJECT_FILE.i:472. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- search <- main. - Called from PROJECT_FILE.i:472. + Called from PROJECT_FILE.i:473. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:474. -[value] computing for function printf <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:475. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for search [value] Done for function search -PROJECT_FILE.i:510:[value] Assertion got status unknown. +PROJECT_FILE.i:511:[value] Assertion got status unknown. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:515. + Called from PROJECT_FILE.i:516. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:516. + Called from PROJECT_FILE.i:517. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:517. + Called from PROJECT_FILE.i:518. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:518. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:519. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:519. + Called from PROJECT_FILE.i:520. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:520. + Called from PROJECT_FILE.i:521. [value] Done for function __gmpz_clear [value] Recording results for main [value] done for function main @@ -675,9 +627,10 @@ extern unsigned long __gmpz_get_ui(__mpz_struct const * /*[1]*/ z); extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -780,7 +733,7 @@ int search(int elt) } e_acsl_end_loop1: ; - e_acsl_assert(! __e_acsl_var,(char *)"Precondition", + e_acsl_assert(__e_acsl_var,(char *)"Precondition", (char *)"(\\forall integer i; 0 <= i && i < 9 ==> A[i] <= A[i+1])", 9); __gmpz_clear((__mpz_struct *)(__e_acsl_i)); @@ -950,7 +903,7 @@ int search(int elt) __gmpz_clear((__mpz_struct *)(__e_acsl_var_25)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_26)); } - e_acsl_assert(! __e_acsl_var_28,(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_28,(char *)"Postcondition", (char *)"(\\old(\\exists integer j; (0 <= j && j < 10) && A[j] == elt) ==> \\result == 1)", 12); if (! __e_acsl_var_39) { __e_acsl_var_43 = 1; } @@ -966,7 +919,7 @@ int search(int elt) __gmpz_clear((__mpz_struct *)(__e_acsl_var_40)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_41)); } - e_acsl_assert(! __e_acsl_var_43,(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_43,(char *)"Postcondition", (char *)"(\\old(\\forall integer j; 0 <= j && j < 10 ==> A[j] != elt) ==> \\result == 0)", 15); return (__retres); @@ -995,7 +948,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)1); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion", (char *)"(found == 1)",31); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -1011,7 +964,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)0); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_6 == 0,(char *)"Assertion", (char *)"(found == 0)",34); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/linear_search.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/linear_search.res.oracle index f52274abf328df4cf5d231ae7c0cda4d350bec8d..87caae80d6d6699686a1f63ba239814efa7d0940 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/linear_search.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/linear_search.res.oracle @@ -7,94 +7,59 @@ tests/e-acsl-runtime/linear_search.i:14:[e-acsl] warning: missing guard for ensu [value] Initial state computed [value] Values of globals at initialization A[0..9] ∈ {0} -PROJECT_FILE.i:341:[value] entering loop for the first time -PROJECT_FILE.i:344:[value] assigning non deterministic value for the first time +PROJECT_FILE.i:342:[value] entering loop for the first time +PROJECT_FILE.i:345:[value] assigning non deterministic value for the first time [value] computing for function search <- main. - Called from PROJECT_FILE.i:347. -PROJECT_FILE.i:230:[value] Function search: precondition got status unknown. -PROJECT_FILE.i:252:[value] entering loop for the first time + Called from PROJECT_FILE.i:348. +PROJECT_FILE.i:231:[value] Function search: precondition got status unknown. +PROJECT_FILE.i:253:[value] entering loop for the first time [value] computing for function e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:262. -[value] computing for function printf <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:263. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:269:[value] entering loop for the first time -PROJECT_FILE.i:287:[value] entering loop for the first time -PROJECT_FILE.i:303:[value] entering loop for the first time +PROJECT_FILE.i:270:[value] entering loop for the first time +PROJECT_FILE.i:288:[value] entering loop for the first time +PROJECT_FILE.i:304:[value] entering loop for the first time [value] computing for function e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:322. -[value] computing for function printf <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:323. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:327. -[value] computing for function printf <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:328. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:233:[value] Function search, behavior exists: postcondition got status unknown. -PROJECT_FILE.i:233:[value] Function search, behavior exists: postcondition got status unknown, but it is unknown if the behavior is active. -PROJECT_FILE.i:237:[value] Function search, behavior not_exists: postcondition got status unknown. -PROJECT_FILE.i:237:[value] Function search, behavior not_exists: postcondition got status unknown, but it is unknown if the behavior is active. +PROJECT_FILE.i:234:[value] Function search, behavior exists: postcondition got status unknown. +PROJECT_FILE.i:234:[value] Function search, behavior exists: postcondition got status unknown, but it is unknown if the behavior is active. +PROJECT_FILE.i:238:[value] Function search, behavior not_exists: postcondition got status unknown. +PROJECT_FILE.i:238:[value] Function search, behavior not_exists: postcondition got status unknown, but it is unknown if the behavior is active. [value] Recording results for search [value] Done for function search -PROJECT_FILE.i:348:[value] Assertion got status unknown. +PROJECT_FILE.i:349:[value] Assertion got status unknown. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:349. + Called from PROJECT_FILE.i:350. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function search <- main. - Called from PROJECT_FILE.i:351. + Called from PROJECT_FILE.i:352. [value] computing for function e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:262. -[value] computing for function printf <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:263. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:322. -[value] computing for function printf <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:323. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:327. -[value] computing for function printf <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- search <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:328. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for search [value] Done for function search -PROJECT_FILE.i:352:[value] Assertion got status unknown. +PROJECT_FILE.i:353:[value] Assertion got status unknown. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:353. + Called from PROJECT_FILE.i:354. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -117,9 +82,10 @@ PROJECT_FILE.i:352:[value] Assertion got status unknown. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -159,7 +125,7 @@ int search(int elt) __e_acsl_i ++; } e_acsl_end_loop1: ; - e_acsl_assert(! __e_acsl_var,(char *)"Precondition", + e_acsl_assert(__e_acsl_var,(char *)"Precondition", (char *)"(\\forall int i; 0 <= i && i < 9 ==> A[i] <= A[i+1])", 9); { @@ -217,12 +183,12 @@ int search(int elt) int __e_acsl_var_7; if (! __e_acsl_var_3) { __e_acsl_var_4 = 1; } else { __e_acsl_var_4 = __retres == 1; } - e_acsl_assert(! __e_acsl_var_4,(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_4,(char *)"Postcondition", (char *)"(\\old(\\exists int j; (0 <= j && j < 10) && A[j] == elt) ==> \\result == 1)", 12); if (! __e_acsl_var_6) { __e_acsl_var_7 = 1; } else { __e_acsl_var_7 = __retres == 0; } - e_acsl_assert(! __e_acsl_var_7,(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_7,(char *)"Postcondition", (char *)"(\\old(\\forall int j; 0 <= j && j < 10 ==> A[j] != elt) ==> \\result == 0)", 15); return (__retres); @@ -243,10 +209,10 @@ int main(void) found = search(36); /*@ assert found ≡ 1; */ ; - e_acsl_assert(! (found == 1),(char *)"Assertion",(char *)"(found == 1)",31); + e_acsl_assert(found == 1,(char *)"Assertion",(char *)"(found == 1)",31); found = search(5); /*@ assert found ≡ 0; */ ; - e_acsl_assert(! (found == 0),(char *)"Assertion",(char *)"(found == 0)",34); + e_acsl_assert(found == 0,(char *)"Assertion",(char *)"(found == 0)",34); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.1.res.oracle index 109323831966488dd89f5d7ab0482722b7b8133a..7104aed36bf05b9f30a3e7572f6b6a72a86ac67c 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.1.res.oracle @@ -2,79 +2,61 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:236:[value] Assertion got status valid. +PROJECT_FILE.i:237:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:241. + Called from PROJECT_FILE.i:242. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:242. + Called from PROJECT_FILE.i:243. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:243. + Called from PROJECT_FILE.i:244. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:245. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:245. + Called from PROJECT_FILE.i:246. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:260. + Called from PROJECT_FILE.i:261. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:261. + Called from PROJECT_FILE.i:262. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:262. + Called from PROJECT_FILE.i:263. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:263. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:264. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:264. + Called from PROJECT_FILE.i:265. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:265. + Called from PROJECT_FILE.i:266. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:282. + Called from PROJECT_FILE.i:283. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:283. + Called from PROJECT_FILE.i:284. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:284. + Called from PROJECT_FILE.i:285. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:285. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:286. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. @@ -94,94 +76,70 @@ PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. Called from PROJECT_FILE.i:295. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:297. + Called from PROJECT_FILE.i:296. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:298. + Called from PROJECT_FILE.i:297. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:312. + Called from PROJECT_FILE.i:311. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:313. + Called from PROJECT_FILE.i:312. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:314. + Called from PROJECT_FILE.i:313. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:316. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:315. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:318. + Called from PROJECT_FILE.i:317. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:319. + Called from PROJECT_FILE.i:318. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:323. + Called from PROJECT_FILE.i:322. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:324. + Called from PROJECT_FILE.i:323. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:325. + Called from PROJECT_FILE.i:324. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:327. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:326. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:329. + Called from PROJECT_FILE.i:327. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:330. + Called from PROJECT_FILE.i:328. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:342. + Called from PROJECT_FILE.i:340. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:343. + Called from PROJECT_FILE.i:341. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:344. + Called from PROJECT_FILE.i:342. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:345. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:343. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:346. + Called from PROJECT_FILE.i:344. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:347. + Called from PROJECT_FILE.i:345. [value] Done for function __gmpz_clear [value] Recording results for main [value] done for function main @@ -217,9 +175,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -243,8 +202,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)y); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 < 0),(char *)"Assertion", - (char *)"(x < y)",9); + e_acsl_assert(__e_acsl_var_3 < 0,(char *)"Assertion",(char *)"(x < y)",9); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); } @@ -263,13 +221,13 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)0); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_6 == 0,(char *)"Precondition", (char *)"(x == 0)",10); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); if (x) { /*@ assert \false; */ ; - e_acsl_assert(1,(char *)"Assertion",(char *)"(\\false)",13); + e_acsl_assert(0,(char *)"Assertion",(char *)"(\\false)",13); } else { /*@ requires x ≡ 0; @@ -286,7 +244,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_8),(long)0); __e_acsl_var_9 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_7), (__mpz_struct const *)(__e_acsl_var_8)); - e_acsl_assert(! (__e_acsl_var_9 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_9 == 0,(char *)"Precondition", (char *)"(x == 0)",15); __gmpz_clear((__mpz_struct *)(__e_acsl_var_7)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_8)); @@ -297,7 +255,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_11),(long)1); __e_acsl_var_12 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_10), (__mpz_struct const *)(__e_acsl_var_11)); - e_acsl_assert(! (__e_acsl_var_12 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_12 == 0,(char *)"Postcondition", (char *)"(x == 1)",16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_11)); @@ -318,7 +276,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_14),(long)1); __e_acsl_var_15 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_13), (__mpz_struct const *)(__e_acsl_var_14)); - e_acsl_assert(! (__e_acsl_var_15 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_15 == 0,(char *)"Precondition", (char *)"(x == 1)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_13)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_14)); @@ -329,7 +287,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_17),(long)2); __e_acsl_var_18 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_16), (__mpz_struct const *)(__e_acsl_var_17)); - e_acsl_assert(! (__e_acsl_var_18 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_18 == 0,(char *)"Postcondition", (char *)"(x == 2)",20); __gmpz_clear((__mpz_struct *)(__e_acsl_var_16)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_17)); @@ -338,7 +296,7 @@ int main(void) } else { /*@ assert \false; */ ; - e_acsl_assert(1,(char *)"Assertion",(char *)"(\\false)",23); + e_acsl_assert(0,(char *)"Assertion",(char *)"(\\false)",23); } } } @@ -347,7 +305,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_20),(long)1); __e_acsl_var_21 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_19), (__mpz_struct const *)(__e_acsl_var_20)); - e_acsl_assert(! (__e_acsl_var_21 >= 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_21 >= 0,(char *)"Postcondition", (char *)"(x >= 1)",11); __gmpz_clear((__mpz_struct *)(__e_acsl_var_19)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_20)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.res.oracle index fd2425fdd039f9b9ec63e3c27d4cc326871b19ae..445fa9ec137ec466d0a1e3a402c320e68fbb75b1 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.res.oracle @@ -2,33 +2,34 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:236:[value] Assertion got status valid. +PROJECT_FILE.i:237:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:237. + Called from PROJECT_FILE.i:238. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:242. + Called from PROJECT_FILE.i:243. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:252. + Called from PROJECT_FILE.i:253. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:261. + Called from PROJECT_FILE.i:262. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:263. + Called from PROJECT_FILE.i:264. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -46,9 +47,10 @@ PROJECT_FILE.i:236:[value] Assertion got status valid. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -64,44 +66,40 @@ int main(void) x = 0; y = 1; /*@ assert x < y; */ ; - e_acsl_assert(! (x < y),(char *)"Assertion",(char *)"(x < y)",9); + e_acsl_assert(x < y,(char *)"Assertion",(char *)"(x < y)",9); /*@ requires x ≡ 0; ensures x ≥ 1; */ { - e_acsl_assert(! (x == 0),(char *)"Precondition",(char *)"(x == 0)",10); + e_acsl_assert(x == 0,(char *)"Precondition",(char *)"(x == 0)",10); if (x) { /*@ assert \false; */ ; - e_acsl_assert(1,(char *)"Assertion",(char *)"(\\false)",13); + e_acsl_assert(0,(char *)"Assertion",(char *)"(\\false)",13); } else { /*@ requires x ≡ 0; ensures x ≡ 1; */ { - e_acsl_assert(! (x == 0),(char *)"Precondition",(char *)"(x == 0)", - 15); + e_acsl_assert(x == 0,(char *)"Precondition",(char *)"(x == 0)",15); x ++; - e_acsl_assert(! (x == 1),(char *)"Postcondition",(char *)"(x == 1)", - 16); + e_acsl_assert(x == 1,(char *)"Postcondition",(char *)"(x == 1)",16); } if (x) { /*@ requires x ≡ 1; ensures x ≡ 2; */ { - e_acsl_assert(! (x == 1),(char *)"Precondition",(char *)"(x == 1)", - 19); + e_acsl_assert(x == 1,(char *)"Precondition",(char *)"(x == 1)",19); x ++; - e_acsl_assert(! (x == 2),(char *)"Postcondition", - (char *)"(x == 2)",20); + e_acsl_assert(x == 2,(char *)"Postcondition",(char *)"(x == 2)",20); } } else { /*@ assert \false; */ ; - e_acsl_assert(1,(char *)"Assertion",(char *)"(\\false)",23); + e_acsl_assert(0,(char *)"Assertion",(char *)"(\\false)",23); } } - e_acsl_assert(! (x >= 1),(char *)"Postcondition",(char *)"(x >= 1)",11); + e_acsl_assert(x >= 1,(char *)"Postcondition",(char *)"(x >= 1)",11); } __retres = 0; diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.1.res.oracle index d6103f00977e3c746adc52b63f2bbb04cc0f79e3..9f45cb6493eb9fca9695460704bf17ba291033b0 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.1.res.oracle @@ -2,36 +2,30 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:234:[value] Assertion got status valid. +PROJECT_FILE.i:235:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:239. + Called from PROJECT_FILE.i:240. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:240. + Called from PROJECT_FILE.i:241. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:241. + Called from PROJECT_FILE.i:242. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:242. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:243. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:243. + Called from PROJECT_FILE.i:244. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Done for function __gmpz_clear [value] Recording results for main [value] done for function main @@ -66,9 +60,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -90,8 +85,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)0); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", - (char *)"(x == 0)",8); + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion",(char *)"(x == 0)", + 8); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); } @@ -106,7 +101,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)0); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_6 != 0,(char *)"Assertion", (char *)"(x != 0)",9); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.res.oracle index 5fba6b6476b8fb7fcd27aa775c23f867fbdf5e03..4a97d4b6fbfe38040eb61ce23aa8fc14dbfea9e4 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.res.oracle @@ -2,9 +2,10 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:234:[value] Assertion got status valid. +PROJECT_FILE.i:235:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:235. + Called from PROJECT_FILE.i:236. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -21,9 +22,10 @@ PROJECT_FILE.i:234:[value] Assertion got status valid. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -37,10 +39,10 @@ int main(void) int x; x = 0; /*@ assert x ≡ 0; */ ; - e_acsl_assert(! (x == 0),(char *)"Assertion",(char *)"(x == 0)",8); + e_acsl_assert(x == 0,(char *)"Assertion",(char *)"(x == 0)",8); if (x) { /*@ assert x ≢ 0; */ ; - e_acsl_assert(! (x != 0),(char *)"Assertion",(char *)"(x != 0)",9); + e_acsl_assert(x != 0,(char *)"Assertion",(char *)"(x != 0)",9); } __retres = 0; return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.1.res.oracle index e97c67273f38219408612974f433cfbec0596e37..aec6c5c837d3d4741dd0b331f64611b924fcb0b0 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.1.res.oracle @@ -2,9 +2,10 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:232:[value] Assertion got status unknown. +PROJECT_FILE.i:233:[value] Assertion got status unknown. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:233. + Called from PROJECT_FILE.i:234. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -20,9 +21,10 @@ PROJECT_FILE.i:232:[value] Assertion got status unknown. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -34,7 +36,7 @@ int main(void) { int __retres; /*@ assert \null ≡ (void *)0; */ ; - e_acsl_assert(! ((void *)0 == (void *)0),(char *)"Assertion", + e_acsl_assert((void *)0 == (void *)0,(char *)"Assertion", (char *)"(\\null == (void *)0)",8); __retres = 0; return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.res.oracle index e97c67273f38219408612974f433cfbec0596e37..aec6c5c837d3d4741dd0b331f64611b924fcb0b0 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.res.oracle @@ -2,9 +2,10 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:232:[value] Assertion got status unknown. +PROJECT_FILE.i:233:[value] Assertion got status unknown. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:233. + Called from PROJECT_FILE.i:234. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -20,9 +21,10 @@ PROJECT_FILE.i:232:[value] Assertion got status unknown. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -34,7 +36,7 @@ int main(void) { int __retres; /*@ assert \null ≡ (void *)0; */ ; - e_acsl_assert(! ((void *)0 == (void *)0),(char *)"Assertion", + e_acsl_assert((void *)0 == (void *)0,(char *)"Assertion", (char *)"(\\null == (void *)0)",8); __retres = 0; return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.1.res.oracle index 0b7a8cdf84932d12218b59eac613057c857b84c4..14eba20508a989e75c62abf6c8f80dd4ba8e5a8e 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.1.res.oracle @@ -2,61 +2,50 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:236:[value] Assertion got status unknown. +PROJECT_FILE.i:237:[value] Assertion got status unknown. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:237. + Called from PROJECT_FILE.i:238. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:239:[value] Assertion got status valid. +PROJECT_FILE.i:240:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:243. + Called from PROJECT_FILE.i:244. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:245. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:246. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear -PROJECT_FILE.i:250:[value] Assertion got status valid. +PROJECT_FILE.i:251:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:256. + Called from PROJECT_FILE.i:257. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:257. + Called from PROJECT_FILE.i:258. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:258. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:259. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:259. + Called from PROJECT_FILE.i:260. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:260. + Called from PROJECT_FILE.i:261. [value] Done for function __gmpz_clear [value] Recording results for main [value] done for function main @@ -94,9 +83,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -108,7 +98,7 @@ int main(void) { int __retres; /*@ assert "toto" ≢ "titi"; */ ; - e_acsl_assert(! ("toto" != "titi"),(char *)"Assertion", + e_acsl_assert("toto" != "titi",(char *)"Assertion", (char *)"(\"toto\" != \"titi\")",10); /*@ assert 'c' ≡ 'c'; */ ; { @@ -117,7 +107,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var),(long)'c'); __e_acsl_var_2 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var)); - e_acsl_assert(! (__e_acsl_var_2 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_2 == 0,(char *)"Assertion", (char *)"(\'c\' == \'c\')",11); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); } @@ -131,7 +121,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_4),(long)true); __e_acsl_var_5 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_3), (__mpz_struct const *)(__e_acsl_var_4)); - e_acsl_assert(! (__e_acsl_var_5 != 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_5 != 0,(char *)"Assertion", (char *)"(false != true)",12); __gmpz_clear((__mpz_struct *)(__e_acsl_var_3)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.res.oracle index 09858eaab9df57a7c26f359449e20f44318a9043..7c9a6c3c1cdf95030c51738a880af97eab6ab109 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.res.oracle @@ -2,19 +2,20 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:236:[value] Assertion got status unknown. +PROJECT_FILE.i:237:[value] Assertion got status unknown. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:237. + Called from PROJECT_FILE.i:238. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:239:[value] Assertion got status valid. +PROJECT_FILE.i:240:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:240. + Called from PROJECT_FILE.i:241. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:242:[value] Assertion got status valid. +PROJECT_FILE.i:243:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:243. + Called from PROJECT_FILE.i:244. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -34,9 +35,10 @@ enum bool { extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -48,14 +50,13 @@ int main(void) { int __retres; /*@ assert "toto" ≢ "titi"; */ ; - e_acsl_assert(! ("toto" != "titi"),(char *)"Assertion", + e_acsl_assert("toto" != "titi",(char *)"Assertion", (char *)"(\"toto\" != \"titi\")",10); /*@ assert 'c' ≡ 'c'; */ ; - e_acsl_assert(! ('c' == 'c'),(char *)"Assertion", - (char *)"(\'c\' == \'c\')",11); + e_acsl_assert('c' == 'c',(char *)"Assertion",(char *)"(\'c\' == \'c\')",11); /*@ assert false ≢ true; */ ; - e_acsl_assert(! (false != true),(char *)"Assertion", - (char *)"(false != true)",12); + e_acsl_assert(false != true,(char *)"Assertion",(char *)"(false != true)", + 12); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.1.res.oracle index 2b9caa2d8635106319f2e2b3b0b275b9efe58eb6..c0b66a261253e2b31b7fdce063ecd47924856e09 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.1.res.oracle @@ -15,162 +15,129 @@ tests/e-acsl-runtime/ptr.i:27:[e-acsl] warning: missing guard for ensuring that [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:240:[value] Assertion got status valid. +PROJECT_FILE.i:241:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:245. + Called from PROJECT_FILE.i:246. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:248. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:249. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:249. + Called from PROJECT_FILE.i:250. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:250. + Called from PROJECT_FILE.i:251. [value] Done for function __gmpz_clear -PROJECT_FILE.i:254:[value] Assertion got status valid. +PROJECT_FILE.i:255:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:259. + Called from PROJECT_FILE.i:260. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:260. + Called from PROJECT_FILE.i:261. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:261. + Called from PROJECT_FILE.i:262. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:262. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:263. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:263. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:264. + Called from PROJECT_FILE.i:265. [value] Done for function __gmpz_clear -PROJECT_FILE.i:268:[value] Assertion got status valid. +PROJECT_FILE.i:269:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:273. + Called from PROJECT_FILE.i:274. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:274. + Called from PROJECT_FILE.i:275. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:276. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:277. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_clear -PROJECT_FILE.i:282:[value] Assertion got status valid. +PROJECT_FILE.i:283:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:295. + Called from PROJECT_FILE.i:296. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:296. + Called from PROJECT_FILE.i:297. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:297. + Called from PROJECT_FILE.i:298. PROJECT_FILE.i:69:[value] Function __gmpz_init: postcondition got status valid. [value] Done for function __gmpz_init [value] computing for function __gmpz_mul <- main. - Called from PROJECT_FILE.i:298. + Called from PROJECT_FILE.i:299. PROJECT_FILE.i:145:[value] Function __gmpz_mul: precondition got status valid. PROJECT_FILE.i:146:[value] Function __gmpz_mul: precondition got status valid. PROJECT_FILE.i:147:[value] Function __gmpz_mul: precondition got status valid. [value] Done for function __gmpz_mul [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:299. + Called from PROJECT_FILE.i:300. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:300. + Called from PROJECT_FILE.i:301. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:301. + Called from PROJECT_FILE.i:302. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:302. + Called from PROJECT_FILE.i:303. [value] Done for function __gmpz_init -PROJECT_FILE.i:303:[value] Assertion got status valid. +PROJECT_FILE.i:304:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:304. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:305. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_tdiv_q <- main. - Called from PROJECT_FILE.i:306. + Called from PROJECT_FILE.i:307. PROJECT_FILE.i:151:[value] Function __gmpz_tdiv_q: precondition got status valid. PROJECT_FILE.i:152:[value] Function __gmpz_tdiv_q: precondition got status valid. PROJECT_FILE.i:153:[value] Function __gmpz_tdiv_q: precondition got status valid. [value] Done for function __gmpz_tdiv_q [value] computing for function __gmpz_get_ui <- main. - Called from PROJECT_FILE.i:307. + Called from PROJECT_FILE.i:308. PROJECT_FILE.i:180:[value] Function __gmpz_get_ui: precondition got status valid. [value] Done for function __gmpz_get_ui -PROJECT_FILE.i:308:[kernel] warning: accessing out of bounds index [0..4294967295]. assert __e_acsl_var_17 < 3; +PROJECT_FILE.i:309:[kernel] warning: accessing out of bounds index [0..4294967295]. assert __e_acsl_var_17 < 3; [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:308. + Called from PROJECT_FILE.i:309. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:309. + Called from PROJECT_FILE.i:310. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:310. + Called from PROJECT_FILE.i:311. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:311. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:312. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:313. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:314. [value] Done for function __gmpz_clear @@ -192,37 +159,34 @@ PROJECT_FILE.i:308:[kernel] warning: accessing out of bounds index [0..429496729 [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:320. [value] Done for function __gmpz_clear -PROJECT_FILE.i:327:[value] entering loop for the first time -PROJECT_FILE.i:330:[value] Assertion got status valid. -[value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:337. -[value] Done for function __gmpz_init_set_si +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:321. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:328:[value] entering loop for the first time +PROJECT_FILE.i:331:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. Called from PROJECT_FILE.i:338. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. Called from PROJECT_FILE.i:339. [value] Done for function __gmpz_init_set_si -[value] computing for function __gmpz_init <- main. +[value] computing for function __gmpz_init_set_si <- main. Called from PROJECT_FILE.i:340. +[value] Done for function __gmpz_init_set_si +[value] computing for function __gmpz_init <- main. + Called from PROJECT_FILE.i:341. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:341. + Called from PROJECT_FILE.i:342. PROJECT_FILE.i:133:[value] Function __gmpz_add: precondition got status valid. PROJECT_FILE.i:134:[value] Function __gmpz_add: precondition got status valid. PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid. [value] Done for function __gmpz_add [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:342. + Called from PROJECT_FILE.i:343. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:343. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:344. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. @@ -274,14 +238,11 @@ PROJECT_FILE.i:367:[kernel] warning: accessing out of bounds index [0..429496729 [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. Called from PROJECT_FILE.i:372. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:373. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:374. [value] Done for function __gmpz_clear @@ -297,38 +258,32 @@ PROJECT_FILE.i:367:[kernel] warning: accessing out of bounds index [0..429496729 [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:378. [value] Done for function __gmpz_clear -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:379. -[value] Done for function __gmpz_clear -PROJECT_FILE.i:383:[value] Assertion got status valid. +PROJECT_FILE.i:382:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:390. + Called from PROJECT_FILE.i:389. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:391. + Called from PROJECT_FILE.i:390. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:392. + Called from PROJECT_FILE.i:391. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:393. + Called from PROJECT_FILE.i:392. [value] Done for function __gmpz_init [value] computing for function __gmpz_sub <- main. - Called from PROJECT_FILE.i:394. + Called from PROJECT_FILE.i:393. [value] Done for function __gmpz_sub [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:395. + Called from PROJECT_FILE.i:394. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:396. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:395. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:397. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:398. [value] Done for function __gmpz_clear @@ -338,36 +293,27 @@ PROJECT_FILE.i:383:[value] Assertion got status valid. [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:400. [value] Done for function __gmpz_clear -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:401. -[value] Done for function __gmpz_clear -PROJECT_FILE.i:330:[value] Assertion got status unknown. -[value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:337. -[value] Done for function __gmpz_init_set_si +PROJECT_FILE.i:331:[value] Assertion got status unknown. [value] computing for function __gmpz_init_set_si <- main. Called from PROJECT_FILE.i:338. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. Called from PROJECT_FILE.i:339. [value] Done for function __gmpz_init_set_si -[value] computing for function __gmpz_init <- main. +[value] computing for function __gmpz_init_set_si <- main. Called from PROJECT_FILE.i:340. +[value] Done for function __gmpz_init_set_si +[value] computing for function __gmpz_init <- main. + Called from PROJECT_FILE.i:341. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:341. + Called from PROJECT_FILE.i:342. [value] Done for function __gmpz_add [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:342. + Called from PROJECT_FILE.i:343. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:343. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:344. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. @@ -416,14 +362,11 @@ PROJECT_FILE.i:367:[value] Assertion got status unknown. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. Called from PROJECT_FILE.i:372. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:373. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:374. [value] Done for function __gmpz_clear @@ -439,38 +382,32 @@ PROJECT_FILE.i:367:[value] Assertion got status unknown. [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:378. [value] Done for function __gmpz_clear -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:379. -[value] Done for function __gmpz_clear -PROJECT_FILE.i:383:[value] Assertion got status unknown. +PROJECT_FILE.i:382:[value] Assertion got status unknown. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:390. + Called from PROJECT_FILE.i:389. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:391. + Called from PROJECT_FILE.i:390. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:392. + Called from PROJECT_FILE.i:391. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:393. + Called from PROJECT_FILE.i:392. [value] Done for function __gmpz_init [value] computing for function __gmpz_sub <- main. - Called from PROJECT_FILE.i:394. + Called from PROJECT_FILE.i:393. [value] Done for function __gmpz_sub [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:395. + Called from PROJECT_FILE.i:394. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:396. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:395. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:397. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:398. [value] Done for function __gmpz_clear @@ -480,35 +417,26 @@ PROJECT_FILE.i:383:[value] Assertion got status unknown. [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:400. [value] Done for function __gmpz_clear -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:401. -[value] Done for function __gmpz_clear -PROJECT_FILE.i:405:[value] assigning non deterministic value for the first time -PROJECT_FILE.i:411:[value] Assertion got status valid. +PROJECT_FILE.i:404:[value] assigning non deterministic value for the first time +PROJECT_FILE.i:410:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:416. + Called from PROJECT_FILE.i:415. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:417. + Called from PROJECT_FILE.i:416. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:418. + Called from PROJECT_FILE.i:417. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:419. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:418. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:420. + Called from PROJECT_FILE.i:419. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:421. + Called from PROJECT_FILE.i:420. [value] Done for function __gmpz_clear [value] Recording results for main [value] done for function main @@ -585,9 +513,10 @@ extern unsigned long __gmpz_get_ui(__mpz_struct const * /*[1]*/ z); extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -615,7 +544,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)1); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion", (char *)"(*p == 1)",13); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -630,7 +559,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)2); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_6 == 0,(char *)"Assertion", (char *)"(t[0] == 2)",14); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); @@ -645,7 +574,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_8),(long)4); __e_acsl_var_9 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_7), (__mpz_struct const *)(__e_acsl_var_8)); - e_acsl_assert(! (__e_acsl_var_9 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_9 == 0,(char *)"Assertion", (char *)"(t[2] == 4)",15); __gmpz_clear((__mpz_struct *)(__e_acsl_var_7)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_8)); @@ -676,7 +605,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_14)); __gmpz_init((__mpz_struct *)(__e_acsl_var_16)); /*@ assert sizeof((int)0x0) ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_15 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_15 == 0),(char *)"Assertion", (char *)"(sizeof((int)0x0) == 0)",16); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_16), (__mpz_struct const *)(__e_acsl_var_12), @@ -690,7 +619,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_19),(long)4); __e_acsl_var_20 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_18), (__mpz_struct const *)(__e_acsl_var_19)); - e_acsl_assert(! (__e_acsl_var_20 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_20 == 0,(char *)"Assertion", (char *)"(t[(2*sizeof(int))/sizeof((int)0x0)] == 4)",16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_11)); @@ -723,7 +652,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_23)); __e_acsl_var_25 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_21), (__mpz_struct const *)(__e_acsl_var_24)); - e_acsl_assert(! (__e_acsl_var_25 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_25 == 0,(char *)"Assertion", (char *)"(t[i] == i+2)",19); __gmpz_clear((__mpz_struct *)(__e_acsl_var_21)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_22)); @@ -760,7 +689,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_27)); __e_acsl_var_33 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_30), (__mpz_struct const *)(__e_acsl_var_32)); - e_acsl_assert(! (__e_acsl_var_33 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_33 == 0,(char *)"Assertion", (char *)"(t[2-i] == 4-i)",20); __gmpz_clear((__mpz_struct *)(__e_acsl_var_26)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_27)); @@ -787,7 +716,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_36)); __e_acsl_var_38 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_37)); - e_acsl_assert(! (__e_acsl_var_38 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_38 == 0,(char *)"Assertion", (char *)"(*(&t[2]-i) == 4-i)",21); __gmpz_clear((__mpz_struct *)(__e_acsl_var_34)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_35)); @@ -810,7 +739,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_40),(long)5); __e_acsl_var_41 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_39), (__mpz_struct const *)(__e_acsl_var_40)); - e_acsl_assert(! (__e_acsl_var_41 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_41 == 0,(char *)"Assertion", (char *)"(*p == 5)",27); __gmpz_clear((__mpz_struct *)(__e_acsl_var_39)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_40)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.res.oracle index b8652fcf2c621bb159dc733da84f237b97dcae76..0f00c1221aec082fe0dd8c0147376b407d969aab 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.res.oracle @@ -13,85 +13,68 @@ tests/e-acsl-runtime/ptr.i:27:[e-acsl] warning: missing guard for ensuring that [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:240:[value] Assertion got status valid. +PROJECT_FILE.i:241:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:241. + Called from PROJECT_FILE.i:242. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:243:[value] Assertion got status valid. +PROJECT_FILE.i:244:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:246:[value] Assertion got status valid. +PROJECT_FILE.i:247:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:249:[value] Assertion got status valid. -PROJECT_FILE.i:252:[value] Assertion got status valid. +PROJECT_FILE.i:250:[value] Assertion got status valid. +PROJECT_FILE.i:253:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:263:[value] entering loop for the first time -PROJECT_FILE.i:266:[value] Assertion got status valid. +PROJECT_FILE.i:264:[value] entering loop for the first time +PROJECT_FILE.i:267:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:267. + Called from PROJECT_FILE.i:268. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:270:[value] Assertion got status valid. +PROJECT_FILE.i:271:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:271. + Called from PROJECT_FILE.i:272. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:274:[value] Assertion got status valid. +PROJECT_FILE.i:275:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:266:[value] Assertion got status unknown. +PROJECT_FILE.i:267:[value] Assertion got status unknown. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:267. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:268. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:270:[value] Assertion got status unknown. +PROJECT_FILE.i:271:[value] Assertion got status unknown. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:271. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:272. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:274:[value] Assertion got status unknown. +PROJECT_FILE.i:275:[value] Assertion got status unknown. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:275. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:276. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:278:[value] assigning non deterministic value for the first time -PROJECT_FILE.i:284:[value] Assertion got status valid. +PROJECT_FILE.i:279:[value] assigning non deterministic value for the first time +PROJECT_FILE.i:285:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:285. + Called from PROJECT_FILE.i:286. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -112,9 +95,10 @@ PROJECT_FILE.i:284:[value] Assertion got status valid. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -134,19 +118,19 @@ int main(void) t[2] = 4; p = & x; /*@ assert *p ≡ 1; */ ; - e_acsl_assert(! (*p == 1),(char *)"Assertion",(char *)"(*p == 1)",13); + e_acsl_assert(*p == 1,(char *)"Assertion",(char *)"(*p == 1)",13); /*@ assert t[0] ≡ 2; */ ; - e_acsl_assert(! (t[0] == 2),(char *)"Assertion",(char *)"(t[0] == 2)",14); + e_acsl_assert(t[0] == 2,(char *)"Assertion",(char *)"(t[0] == 2)",14); /*@ assert t[2] ≡ 4; */ ; - e_acsl_assert(! (t[2] == 4),(char *)"Assertion",(char *)"(t[2] == 4)",15); + e_acsl_assert(t[2] == 4,(char *)"Assertion",(char *)"(t[2] == 4)",15); /*@ assert t[(2*sizeof(int))/sizeof((int)0x0)] ≡ 4; */ ; { int __e_acsl_var; /*@ assert sizeof((int)0x0) ≢ 0; */ ; - e_acsl_assert(4 == 0,(char *)"Assertion", + e_acsl_assert(! (4 == 0),(char *)"Assertion", (char *)"(sizeof((int)0x0) == 0)",16); __e_acsl_var = (2 * 4) / 4; - e_acsl_assert(! (t[__e_acsl_var] == 4),(char *)"Assertion", + e_acsl_assert(t[__e_acsl_var] == 4,(char *)"Assertion", (char *)"(t[(2*sizeof(int))/sizeof((int)0x0)] == 4)",16); } @@ -156,13 +140,13 @@ int main(void) while (1) { if (! (i < 2)) { break; } /*@ assert t[i] ≡ i+2; */ ; - e_acsl_assert(! ((long long)t[i] == (long long)i + (long long)2), + e_acsl_assert((long long)t[i] == (long long)i + (long long)2, (char *)"Assertion",(char *)"(t[i] == i+2)",19); /*@ assert t[2-i] ≡ 4-i; */ ; - e_acsl_assert(! ((long long)t[(long long)2 - (long long)i] == (long long)4 - (long long)i), + e_acsl_assert((long long)t[(long long)2 - (long long)i] == (long long)4 - (long long)i, (char *)"Assertion",(char *)"(t[2-i] == 4-i)",20); /*@ assert *(&t[2]-i) ≡ 4-i; */ ; - e_acsl_assert(! ((long long)*(& t[2] - i) == (long long)4 - (long long)i), + e_acsl_assert((long long)*(& t[2] - i) == (long long)4 - (long long)i, (char *)"Assertion",(char *)"(*(&t[2]-i) == 4-i)",21); i ++; } @@ -171,7 +155,7 @@ int main(void) p = & t[2]; t[2] = 5; /*@ assert *p ≡ 5; */ ; - e_acsl_assert(! (*p == 5),(char *)"Assertion",(char *)"(*p == 5)",27); + e_acsl_assert(*p == 5,(char *)"Assertion",(char *)"(*p == 5)",27); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.1.res.oracle index 590753b799396ac967fe2ce8d079c7aae4b359f9..fb943cd4de75b0fa06061379251d2b7f799ff867 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.1.res.oracle @@ -2,711 +2,657 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:232:[value] Assertion got status unknown. +PROJECT_FILE.i:233:[value] Assertion got status unknown. [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:237. + Called from PROJECT_FILE.i:238. PROJECT_FILE.i:69:[value] Function __gmpz_init: postcondition got status valid. [value] Done for function __gmpz_init [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:240. + Called from PROJECT_FILE.i:241. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:241. + Called from PROJECT_FILE.i:242. PROJECT_FILE.i:94:[value] Function __gmpz_set: precondition got status valid. PROJECT_FILE.i:95:[value] Function __gmpz_set: precondition got status valid. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:242. + Called from PROJECT_FILE.i:243. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear -PROJECT_FILE.i:245:[value] entering loop for the first time +PROJECT_FILE.i:246:[value] entering loop for the first time [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:249. + Called from PROJECT_FILE.i:250. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:250. + Called from PROJECT_FILE.i:251. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:260. + Called from PROJECT_FILE.i:261. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:261. + Called from PROJECT_FILE.i:262. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:266. + Called from PROJECT_FILE.i:267. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:271. + Called from PROJECT_FILE.i:272. [value] Done for function __gmpz_clear [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:267. + Called from PROJECT_FILE.i:268. [value] Done for function __gmpz_cmp -PROJECT_FILE.i:268:[value] assigning non deterministic value for the first time +PROJECT_FILE.i:269:[value] assigning non deterministic value for the first time [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:269. + Called from PROJECT_FILE.i:270. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:281. + Called from PROJECT_FILE.i:282. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:271. + Called from PROJECT_FILE.i:272. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:282. + Called from PROJECT_FILE.i:283. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:283. + Called from PROJECT_FILE.i:284. PROJECT_FILE.i:133:[value] Function __gmpz_add: precondition got status valid. PROJECT_FILE.i:134:[value] Function __gmpz_add: precondition got status valid. PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid. [value] Done for function __gmpz_add [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:284. + Called from PROJECT_FILE.i:285. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:285. + Called from PROJECT_FILE.i:286. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:286. + Called from PROJECT_FILE.i:287. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:291. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:292. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:294. + Called from PROJECT_FILE.i:295. [value] Done for function __gmpz_clear -PROJECT_FILE.i:298:[value] Assertion got status unknown. +PROJECT_FILE.i:299:[value] Assertion got status unknown. [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:303. + Called from PROJECT_FILE.i:304. [value] Done for function __gmpz_init [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:308. + Called from PROJECT_FILE.i:309. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:309. + Called from PROJECT_FILE.i:310. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:310. + Called from PROJECT_FILE.i:311. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:311. + Called from PROJECT_FILE.i:312. [value] Done for function __gmpz_add [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:312. -[value] Done for function __gmpz_set -[value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:313. -[value] Done for function __gmpz_clear +[value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:314. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:315. [value] Done for function __gmpz_clear -PROJECT_FILE.i:318:[value] entering loop for the first time +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:316. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:319:[value] entering loop for the first time [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:322. + Called from PROJECT_FILE.i:323. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:323. + Called from PROJECT_FILE.i:324. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:326. + Called from PROJECT_FILE.i:327. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:332. + Called from PROJECT_FILE.i:333. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:333. + Called from PROJECT_FILE.i:334. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:334. + Called from PROJECT_FILE.i:335. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:344. + Called from PROJECT_FILE.i:345. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:345. + Called from PROJECT_FILE.i:346. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:346. + Called from PROJECT_FILE.i:347. [value] Done for function __gmpz_add [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:347. + Called from PROJECT_FILE.i:348. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:348. + Called from PROJECT_FILE.i:349. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:349. + Called from PROJECT_FILE.i:350. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:354. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:355. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:356. + Called from PROJECT_FILE.i:357. [value] Done for function __gmpz_clear -PROJECT_FILE.i:360:[value] Assertion got status unknown. +PROJECT_FILE.i:361:[value] Assertion got status unknown. [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:365. + Called from PROJECT_FILE.i:366. [value] Done for function __gmpz_init [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:370. + Called from PROJECT_FILE.i:371. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:371. + Called from PROJECT_FILE.i:372. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:372. + Called from PROJECT_FILE.i:373. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:373. + Called from PROJECT_FILE.i:374. [value] Done for function __gmpz_add [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:374. -[value] Done for function __gmpz_set -[value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:375. -[value] Done for function __gmpz_clear +[value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:376. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:377. [value] Done for function __gmpz_clear -PROJECT_FILE.i:380:[value] entering loop for the first time +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:378. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:381:[value] entering loop for the first time [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:384. + Called from PROJECT_FILE.i:385. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:385. + Called from PROJECT_FILE.i:386. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:388. + Called from PROJECT_FILE.i:389. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:408. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:409. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:410. + Called from PROJECT_FILE.i:411. [value] Done for function __gmpz_clear -PROJECT_FILE.i:414:[value] Assertion got status unknown. +PROJECT_FILE.i:415:[value] Assertion got status unknown. [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:419. + Called from PROJECT_FILE.i:420. [value] Done for function __gmpz_init [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:422. + Called from PROJECT_FILE.i:423. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:423. + Called from PROJECT_FILE.i:424. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:424. + Called from PROJECT_FILE.i:425. [value] Done for function __gmpz_clear -PROJECT_FILE.i:427:[value] entering loop for the first time +PROJECT_FILE.i:428:[value] entering loop for the first time [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:431. + Called from PROJECT_FILE.i:432. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:432. + Called from PROJECT_FILE.i:433. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:435. + Called from PROJECT_FILE.i:436. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:441. + Called from PROJECT_FILE.i:442. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:442. + Called from PROJECT_FILE.i:443. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:443. + Called from PROJECT_FILE.i:444. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:453. + Called from PROJECT_FILE.i:454. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:454. + Called from PROJECT_FILE.i:455. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:455. + Called from PROJECT_FILE.i:456. [value] Done for function __gmpz_add [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:456. + Called from PROJECT_FILE.i:457. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:457. + Called from PROJECT_FILE.i:458. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:458. + Called from PROJECT_FILE.i:459. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:463. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:464. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:465. + Called from PROJECT_FILE.i:466. [value] Done for function __gmpz_clear -PROJECT_FILE.i:469:[value] Assertion got status unknown. -[value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:479. -[value] Done for function __gmpz_init +PROJECT_FILE.i:470:[value] Assertion got status unknown. [value] computing for function __gmpz_init <- main. Called from PROJECT_FILE.i:480. [value] Done for function __gmpz_init [value] computing for function __gmpz_init <- main. Called from PROJECT_FILE.i:481. [value] Done for function __gmpz_init +[value] computing for function __gmpz_init <- main. + Called from PROJECT_FILE.i:482. +[value] Done for function __gmpz_init [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:484. + Called from PROJECT_FILE.i:485. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:485. + Called from PROJECT_FILE.i:486. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:486. + Called from PROJECT_FILE.i:487. [value] Done for function __gmpz_clear -PROJECT_FILE.i:489:[value] entering loop for the first time +PROJECT_FILE.i:490:[value] entering loop for the first time [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:493. + Called from PROJECT_FILE.i:494. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:494. + Called from PROJECT_FILE.i:495. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:497. + Called from PROJECT_FILE.i:498. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:502. + Called from PROJECT_FILE.i:503. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:503. + Called from PROJECT_FILE.i:504. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:504. + Called from PROJECT_FILE.i:505. [value] Done for function __gmpz_clear -PROJECT_FILE.i:507:[value] entering loop for the first time +PROJECT_FILE.i:508:[value] entering loop for the first time [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:511. + Called from PROJECT_FILE.i:512. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:512. + Called from PROJECT_FILE.i:513. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:515. + Called from PROJECT_FILE.i:516. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:520. + Called from PROJECT_FILE.i:521. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:580. + Called from PROJECT_FILE.i:581. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:521. + Called from PROJECT_FILE.i:522. [value] Done for function __gmpz_set [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:581. + Called from PROJECT_FILE.i:582. [value] Done for function __gmpz_init [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:522. + Called from PROJECT_FILE.i:523. [value] Done for function __gmpz_clear [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:582. + Called from PROJECT_FILE.i:583. [value] Done for function __gmpz_add -PROJECT_FILE.i:525:[value] entering loop for the first time +PROJECT_FILE.i:526:[value] entering loop for the first time [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:583. + Called from PROJECT_FILE.i:584. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:584. + Called from PROJECT_FILE.i:585. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:585. + Called from PROJECT_FILE.i:586. [value] Done for function __gmpz_clear [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:528. + Called from PROJECT_FILE.i:529. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:537. + Called from PROJECT_FILE.i:538. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:538. + Called from PROJECT_FILE.i:539. [value] Done for function __gmpz_add [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:568. + Called from PROJECT_FILE.i:569. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:539. + Called from PROJECT_FILE.i:540. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:569. + Called from PROJECT_FILE.i:570. [value] Done for function __gmpz_init [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:540. + Called from PROJECT_FILE.i:541. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:570. + Called from PROJECT_FILE.i:571. [value] Done for function __gmpz_add [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:541. + Called from PROJECT_FILE.i:542. [value] Done for function __gmpz_add [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:571. + Called from PROJECT_FILE.i:572. [value] Done for function __gmpz_set [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:542. + Called from PROJECT_FILE.i:543. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:572. + Called from PROJECT_FILE.i:573. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:544. + Called from PROJECT_FILE.i:545. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:573. + Called from PROJECT_FILE.i:574. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:545. + Called from PROJECT_FILE.i:546. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:546. + Called from PROJECT_FILE.i:547. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:556. + Called from PROJECT_FILE.i:557. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:557. + Called from PROJECT_FILE.i:558. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:558. + Called from PROJECT_FILE.i:559. [value] Done for function __gmpz_add [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:559. + Called from PROJECT_FILE.i:560. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:560. + Called from PROJECT_FILE.i:561. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:561. + Called from PROJECT_FILE.i:562. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:590. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:591. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:593. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:594. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:595. [value] Done for function __gmpz_clear -PROJECT_FILE.i:599:[value] Assertion got status unknown. +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:596. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:600:[value] Assertion got status unknown. [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:604. + Called from PROJECT_FILE.i:605. [value] Done for function __gmpz_init [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:607. + Called from PROJECT_FILE.i:608. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:608. + Called from PROJECT_FILE.i:609. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:609. + Called from PROJECT_FILE.i:610. [value] Done for function __gmpz_clear -PROJECT_FILE.i:612:[value] entering loop for the first time +PROJECT_FILE.i:613:[value] entering loop for the first time [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:616. + Called from PROJECT_FILE.i:617. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:617. + Called from PROJECT_FILE.i:618. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:620. + Called from PROJECT_FILE.i:621. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:626. + Called from PROJECT_FILE.i:627. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:627. + Called from PROJECT_FILE.i:628. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:628. + Called from PROJECT_FILE.i:629. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:638. + Called from PROJECT_FILE.i:639. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:639. + Called from PROJECT_FILE.i:640. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:640. + Called from PROJECT_FILE.i:641. [value] Done for function __gmpz_add [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:641. + Called from PROJECT_FILE.i:642. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:642. + Called from PROJECT_FILE.i:643. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:643. + Called from PROJECT_FILE.i:644. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:648. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:649. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:650. + Called from PROJECT_FILE.i:651. [value] Done for function __gmpz_clear -PROJECT_FILE.i:654:[value] Assertion got status unknown. +PROJECT_FILE.i:655:[value] Assertion got status unknown. [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:661. + Called from PROJECT_FILE.i:662. [value] Done for function __gmpz_init [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:664. + Called from PROJECT_FILE.i:665. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:665. + Called from PROJECT_FILE.i:666. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:666. + Called from PROJECT_FILE.i:667. [value] Done for function __gmpz_clear -PROJECT_FILE.i:669:[value] entering loop for the first time +PROJECT_FILE.i:670:[value] entering loop for the first time [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:673. + Called from PROJECT_FILE.i:674. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:674. + Called from PROJECT_FILE.i:675. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:677. + Called from PROJECT_FILE.i:678. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:687. + Called from PROJECT_FILE.i:688. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:688. + Called from PROJECT_FILE.i:689. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:689. + Called from PROJECT_FILE.i:690. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:690. + Called from PROJECT_FILE.i:691. [value] Done for function __gmpz_init -PROJECT_FILE.i:691:[value] Assertion got status valid. +PROJECT_FILE.i:692:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:692. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:693. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_tdiv_r <- main. - Called from PROJECT_FILE.i:693. + Called from PROJECT_FILE.i:694. PROJECT_FILE.i:157:[value] Function __gmpz_tdiv_r: precondition got status valid. PROJECT_FILE.i:158:[value] Function __gmpz_tdiv_r: precondition got status valid. PROJECT_FILE.i:159:[value] Function __gmpz_tdiv_r: precondition got status valid. [value] Done for function __gmpz_tdiv_r [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:694. + Called from PROJECT_FILE.i:695. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:763. + Called from PROJECT_FILE.i:765. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:700. + Called from PROJECT_FILE.i:701. [value] Done for function __gmpz_init [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:764. + Called from PROJECT_FILE.i:766. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:765. + Called from PROJECT_FILE.i:767. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:703. + Called from PROJECT_FILE.i:704. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:704. + Called from PROJECT_FILE.i:705. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:705. + Called from PROJECT_FILE.i:706. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:775. + Called from PROJECT_FILE.i:777. [value] Done for function __gmpz_init_set_si -PROJECT_FILE.i:708:[value] entering loop for the first time +PROJECT_FILE.i:709:[value] entering loop for the first time [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:776. + Called from PROJECT_FILE.i:778. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:777. + Called from PROJECT_FILE.i:779. [value] Done for function __gmpz_add [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:778. + Called from PROJECT_FILE.i:780. [value] Done for function __gmpz_set [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:715. + Called from PROJECT_FILE.i:716. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:779. + Called from PROJECT_FILE.i:781. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:716. + Called from PROJECT_FILE.i:717. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:780. + Called from PROJECT_FILE.i:782. [value] Done for function __gmpz_clear [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:717. + Called from PROJECT_FILE.i:718. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:719. + Called from PROJECT_FILE.i:720. [value] Done for function __gmpz_init -PROJECT_FILE.i:720:[value] Assertion got status valid. +PROJECT_FILE.i:721:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:721. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:722. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_tdiv_q <- main. - Called from PROJECT_FILE.i:722. + Called from PROJECT_FILE.i:724. PROJECT_FILE.i:151:[value] Function __gmpz_tdiv_q: precondition got status valid. PROJECT_FILE.i:152:[value] Function __gmpz_tdiv_q: precondition got status valid. PROJECT_FILE.i:153:[value] Function __gmpz_tdiv_q: precondition got status valid. [value] Done for function __gmpz_tdiv_q [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:723. + Called from PROJECT_FILE.i:725. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:726. + Called from PROJECT_FILE.i:728. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:727. + Called from PROJECT_FILE.i:729. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:728. + Called from PROJECT_FILE.i:730. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:761. + Called from PROJECT_FILE.i:763. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:735. + Called from PROJECT_FILE.i:737. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:763. + Called from PROJECT_FILE.i:765. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:736. + Called from PROJECT_FILE.i:738. [value] Done for function __gmpz_init [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:764. + Called from PROJECT_FILE.i:766. [value] Done for function __gmpz_clear [value] computing for function __gmpz_mul <- main. - Called from PROJECT_FILE.i:737. + Called from PROJECT_FILE.i:739. PROJECT_FILE.i:145:[value] Function __gmpz_mul: precondition got status valid. PROJECT_FILE.i:146:[value] Function __gmpz_mul: precondition got status valid. PROJECT_FILE.i:147:[value] Function __gmpz_mul: precondition got status valid. [value] Done for function __gmpz_mul [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:765. + Called from PROJECT_FILE.i:767. [value] Done for function __gmpz_clear [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:738. + Called from PROJECT_FILE.i:740. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:739. + Called from PROJECT_FILE.i:741. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:740. + Called from PROJECT_FILE.i:742. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:750. + Called from PROJECT_FILE.i:752. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:751. + Called from PROJECT_FILE.i:753. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:752. + Called from PROJECT_FILE.i:754. [value] Done for function __gmpz_add [value] computing for function __gmpz_set <- main. - Called from PROJECT_FILE.i:753. + Called from PROJECT_FILE.i:755. [value] Done for function __gmpz_set [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:761. + Called from PROJECT_FILE.i:763. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:754. + Called from PROJECT_FILE.i:756. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:755. + Called from PROJECT_FILE.i:757. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:785. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:787. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:788. + Called from PROJECT_FILE.i:790. [value] Done for function __gmpz_clear [value] Recording results for main [value] done for function main @@ -780,9 +726,10 @@ extern void __gmpz_tdiv_r(__mpz_struct * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -857,7 +804,7 @@ int main(void) } e_acsl_end_loop1: ; - e_acsl_assert(! __e_acsl_var,(char *)"Assertion", + e_acsl_assert(__e_acsl_var,(char *)"Assertion", (char *)"(\\forall integer x; 0 <= x && x <= 1 ==> x == 0 || x == 1)", 11); __gmpz_clear((__mpz_struct *)(__e_acsl_x)); @@ -926,7 +873,7 @@ int main(void) } e_acsl_end_loop2: ; - e_acsl_assert(! __e_acsl_var_12,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_12,(char *)"Assertion", (char *)"(\\forall integer x; 0 < x && x <= 1 ==> x == 1)", 12); __gmpz_clear((__mpz_struct *)(__e_acsl_x_2)); @@ -984,7 +931,7 @@ int main(void) } e_acsl_end_loop3: ; - e_acsl_assert(! __e_acsl_var_22,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_22,(char *)"Assertion", (char *)"(\\forall integer x; 0 < x && x < 1 ==> \\false)", 13); __gmpz_clear((__mpz_struct *)(__e_acsl_x_3)); @@ -1044,7 +991,7 @@ int main(void) } e_acsl_end_loop4: ; - e_acsl_assert(! __e_acsl_var_30,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_30,(char *)"Assertion", (char *)"(\\forall integer x; 0 <= x && x < 1 ==> x == 0)", 14); __gmpz_clear((__mpz_struct *)(__e_acsl_x_4)); @@ -1190,7 +1137,7 @@ int main(void) } e_acsl_end_loop5: ; - e_acsl_assert(! __e_acsl_var_38,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_38,(char *)"Assertion", (char *)"(\\forall integer x, integer y, integer z;\n ((0 <= x && x < 2) && (0 <= y && y < 5)) && (0 <= z && z <= y) ==>\n x+z <= y+1)", 18); __gmpz_clear((__mpz_struct *)(__e_acsl_x_5)); @@ -1252,7 +1199,7 @@ int main(void) } e_acsl_end_loop6: ; - e_acsl_assert(! __e_acsl_var_57,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_57,(char *)"Assertion", (char *)"(\\exists integer x; (0 <= x && x < 10) && x == 5)", 23); __gmpz_clear((__mpz_struct *)(__e_acsl_x_6)); @@ -1298,7 +1245,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_67)); __gmpz_init((__mpz_struct *)(__e_acsl_var_69)); /*@ assert 2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_68 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_68 == 0),(char *)"Assertion", (char *)"(2 == 0)",28); __gmpz_tdiv_r((__mpz_struct *)(__e_acsl_var_69), (__mpz_struct const *)(__e_acsl_x_7), @@ -1332,7 +1279,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_77)); __gmpz_init((__mpz_struct *)(__e_acsl_var_79)); /*@ assert 2 ≢ 0; */ ; - e_acsl_assert(__e_acsl_var_78 == 0,(char *)"Assertion", + e_acsl_assert(! (__e_acsl_var_78 == 0),(char *)"Assertion", (char *)"(2 == 0)",28); __gmpz_tdiv_q((__mpz_struct *)(__e_acsl_var_79), (__mpz_struct const *)(__e_acsl_x_7), @@ -1408,7 +1355,7 @@ int main(void) } e_acsl_end_loop8: ; - e_acsl_assert(! __e_acsl_var_65,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_65,(char *)"Assertion", (char *)"(\\forall integer x; 0 <= x && x < 10 ==>\n (x%2 == 0 ==> (\\exists integer y; (0 <= y && y <= x/2) && x == 2*y)))", 27); __gmpz_clear((__mpz_struct *)(__e_acsl_x_7)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.res.oracle index 7ad082b471a0b3615e4be6372ca12c6f3f71572d..72f97d6b7064ccfb1db7d1460624866eec164e84 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.res.oracle @@ -2,121 +2,110 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:232:[value] Assertion got status unknown. -PROJECT_FILE.i:238:[value] entering loop for the first time -PROJECT_FILE.i:250:[value] assigning non deterministic value for the first time +PROJECT_FILE.i:233:[value] Assertion got status unknown. +PROJECT_FILE.i:239:[value] entering loop for the first time +PROJECT_FILE.i:251:[value] assigning non deterministic value for the first time [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:254. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:259:[value] Assertion got status unknown. -PROJECT_FILE.i:265:[value] entering loop for the first time +PROJECT_FILE.i:260:[value] Assertion got status unknown. +PROJECT_FILE.i:266:[value] entering loop for the first time [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:275. + Called from PROJECT_FILE.i:276. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:280:[value] Assertion got status unknown. -PROJECT_FILE.i:286:[value] entering loop for the first time +PROJECT_FILE.i:281:[value] Assertion got status unknown. +PROJECT_FILE.i:287:[value] entering loop for the first time [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:296. + Called from PROJECT_FILE.i:297. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:301:[value] Assertion got status unknown. -PROJECT_FILE.i:307:[value] entering loop for the first time +PROJECT_FILE.i:302:[value] Assertion got status unknown. +PROJECT_FILE.i:308:[value] entering loop for the first time [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:317. + Called from PROJECT_FILE.i:318. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:322:[value] Assertion got status unknown. -PROJECT_FILE.i:333:[value] entering loop for the first time -PROJECT_FILE.i:337:[value] entering loop for the first time -PROJECT_FILE.i:341:[value] entering loop for the first time +PROJECT_FILE.i:323:[value] Assertion got status unknown. +PROJECT_FILE.i:334:[value] entering loop for the first time +PROJECT_FILE.i:338:[value] entering loop for the first time +PROJECT_FILE.i:342:[value] entering loop for the first time [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:355. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:356. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:361:[value] Assertion got status unknown. -PROJECT_FILE.i:367:[value] entering loop for the first time +PROJECT_FILE.i:362:[value] Assertion got status unknown. +PROJECT_FILE.i:368:[value] entering loop for the first time [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:377. + Called from PROJECT_FILE.i:378. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:382:[value] Assertion got status unknown. -PROJECT_FILE.i:390:[value] entering loop for the first time -PROJECT_FILE.i:396:[value] Assertion got status valid. +PROJECT_FILE.i:383:[value] Assertion got status unknown. +PROJECT_FILE.i:391:[value] entering loop for the first time +PROJECT_FILE.i:397:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:397. + Called from PROJECT_FILE.i:398. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:405:[value] entering loop for the first time -PROJECT_FILE.i:408:[value] Assertion got status valid. +PROJECT_FILE.i:406:[value] entering loop for the first time +PROJECT_FILE.i:409:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:409. + Called from PROJECT_FILE.i:410. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:397. + Called from PROJECT_FILE.i:398. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:409. + Called from PROJECT_FILE.i:410. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:397. + Called from PROJECT_FILE.i:398. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:409. + Called from PROJECT_FILE.i:410. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:409. + Called from PROJECT_FILE.i:410. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:397. + Called from PROJECT_FILE.i:398. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:409. + Called from PROJECT_FILE.i:410. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:397. + Called from PROJECT_FILE.i:398. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:409. + Called from PROJECT_FILE.i:410. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:397. + Called from PROJECT_FILE.i:398. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:409. + Called from PROJECT_FILE.i:410. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:409. + Called from PROJECT_FILE.i:410. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:432. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:433. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -132,9 +121,10 @@ PROJECT_FILE.i:408:[value] Assertion got status valid. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -164,7 +154,7 @@ int main(void) __e_acsl_x ++; } e_acsl_end_loop1: ; - e_acsl_assert(! __e_acsl_var,(char *)"Assertion", + e_acsl_assert(__e_acsl_var,(char *)"Assertion", (char *)"(\\forall int x; 0 <= x && x <= 1 ==> x == 0 || x == 1)", 11); } @@ -183,7 +173,7 @@ int main(void) __e_acsl_x_2 ++; } e_acsl_end_loop2: ; - e_acsl_assert(! __e_acsl_var_3,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_3,(char *)"Assertion", (char *)"(\\forall int x; 0 < x && x <= 1 ==> x == 1)",12); } @@ -200,7 +190,7 @@ int main(void) __e_acsl_x_3 ++; } e_acsl_end_loop3: ; - e_acsl_assert(! __e_acsl_var_4,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_4,(char *)"Assertion", (char *)"(\\forall int x; 0 < x && x < 1 ==> \\false)",13); } @@ -218,7 +208,7 @@ int main(void) __e_acsl_x_4 ++; } e_acsl_end_loop4: ; - e_acsl_assert(! __e_acsl_var_5,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_5,(char *)"Assertion", (char *)"(\\forall int x; 0 <= x && x < 1 ==> x == 0)",14); } @@ -252,7 +242,7 @@ int main(void) __e_acsl_x_5 ++; } e_acsl_end_loop5: ; - e_acsl_assert(! __e_acsl_var_6,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_6,(char *)"Assertion", (char *)"(\\forall int x, int y, int z;\n ((0 <= x && x < 2) && (0 <= y && y < 5)) && (0 <= z && z <= y) ==>\n x+z <= y+1)", 18); } @@ -272,7 +262,7 @@ int main(void) __e_acsl_x_6 ++; } e_acsl_end_loop6: ; - e_acsl_assert(! __e_acsl_var_7,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_7,(char *)"Assertion", (char *)"(\\exists int x; (0 <= x && x < 10) && x == 5)", 23); } @@ -291,7 +281,7 @@ int main(void) int __e_acsl_var_9; int __e_acsl_var_12; /*@ assert 2 ≢ 0; */ ; - e_acsl_assert(2 == 0,(char *)"Assertion",(char *)"(2 == 0)",28); + e_acsl_assert(! (2 == 0),(char *)"Assertion",(char *)"(2 == 0)",28); __e_acsl_var_9 = __e_acsl_x_7 % 2; if (! (__e_acsl_var_9 == 0)) { __e_acsl_var_12 = 1; } else { @@ -303,7 +293,8 @@ int main(void) { int __e_acsl_var_11; /*@ assert 2 ≢ 0; */ ; - e_acsl_assert(2 == 0,(char *)"Assertion",(char *)"(2 == 0)",28); + e_acsl_assert(! (2 == 0),(char *)"Assertion", + (char *)"(2 == 0)",28); __e_acsl_var_11 = __e_acsl_x_7 / 2; if (! (__e_acsl_y_2 <= __e_acsl_var_11)) { break; } } @@ -325,7 +316,7 @@ int main(void) __e_acsl_x_7 ++; } e_acsl_end_loop8: ; - e_acsl_assert(! __e_acsl_var_8,(char *)"Assertion", + e_acsl_assert(__e_acsl_var_8,(char *)"Assertion", (char *)"(\\forall int x; 0 <= x && x < 10 ==>\n (x%2 == 0 ==> (\\exists int y; (0 <= y && y <= x/2) && x == 2*y)))", 27); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.1.res.oracle index 06cb5b8306baca1c11f9f84d397be908fdfec13f..e31ce740de6627db9c061f8848da7bcff0c1afcf 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.1.res.oracle @@ -5,53 +5,44 @@ tests/e-acsl-runtime/result.i:7:[e-acsl] warning: missing guard for ensuring tha [value] Values of globals at initialization Y ∈ {1} [value] computing for function f <- main. - Called from PROJECT_FILE.i:306. + Called from PROJECT_FILE.i:305. [value] computing for function __gmpz_init_set_si <- f <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- f <- main. - Called from PROJECT_FILE.i:245. + Called from PROJECT_FILE.i:246. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- f <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. PROJECT_FILE.i:69:[value] Function __gmpz_init: postcondition got status valid. [value] Done for function __gmpz_init [value] computing for function __gmpz_sub <- f <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. PROJECT_FILE.i:139:[value] Function __gmpz_sub: precondition got status valid. PROJECT_FILE.i:140:[value] Function __gmpz_sub: precondition got status valid. PROJECT_FILE.i:141:[value] Function __gmpz_sub: precondition got status valid. [value] Done for function __gmpz_sub [value] computing for function __gmpz_get_ui <- f <- main. - Called from PROJECT_FILE.i:248. + Called from PROJECT_FILE.i:249. PROJECT_FILE.i:180:[value] Function __gmpz_get_ui: precondition got status valid. [value] Done for function __gmpz_get_ui [value] computing for function __gmpz_init_set_si <- f <- main. - Called from PROJECT_FILE.i:249. + Called from PROJECT_FILE.i:250. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- f <- main. - Called from PROJECT_FILE.i:250. + Called from PROJECT_FILE.i:251. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:251. -[value] computing for function printf <- e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:252. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- f <- main. - Called from PROJECT_FILE.i:253. -PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- f <- main. Called from PROJECT_FILE.i:254. +PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- f <- main. Called from PROJECT_FILE.i:255. @@ -59,28 +50,25 @@ PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] computing for function __gmpz_clear <- f <- main. Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_clear -PROJECT_FILE.i:229:[value] Function f: postcondition got status valid. +[value] computing for function __gmpz_clear <- f <- main. + Called from PROJECT_FILE.i:257. +[value] Done for function __gmpz_clear +PROJECT_FILE.i:230:[value] Function f: postcondition got status valid. [value] Recording results for f [value] Done for function f [value] computing for function g <- main. - Called from PROJECT_FILE.i:307. + Called from PROJECT_FILE.i:306. [value] computing for function __gmpz_init_set_si <- g <- main. - Called from PROJECT_FILE.i:270. + Called from PROJECT_FILE.i:271. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- g <- main. - Called from PROJECT_FILE.i:271. + Called from PROJECT_FILE.i:272. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- g <- main. - Called from PROJECT_FILE.i:272. + Called from PROJECT_FILE.i:273. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:273. -[value] computing for function printf <- e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:274. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- g <- main. @@ -89,11 +77,11 @@ PROJECT_FILE.i:229:[value] Function f: postcondition got status valid. [value] computing for function __gmpz_clear <- g <- main. Called from PROJECT_FILE.i:276. [value] Done for function __gmpz_clear -PROJECT_FILE.i:263:[value] Function g: postcondition got status valid. +PROJECT_FILE.i:264:[value] Function g: postcondition got status valid. [value] Recording results for g [value] Done for function g [value] computing for function h <- main. - Called from PROJECT_FILE.i:308. + Called from PROJECT_FILE.i:307. [value] computing for function __gmpz_init_set_si <- h <- main. Called from PROJECT_FILE.i:291. [value] Done for function __gmpz_init_set_si @@ -105,19 +93,13 @@ PROJECT_FILE.i:263:[value] Function g: postcondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- h <- main. Called from PROJECT_FILE.i:294. -[value] computing for function printf <- e_acsl_assert <- h <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- h <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- h <- main. - Called from PROJECT_FILE.i:296. + Called from PROJECT_FILE.i:295. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- h <- main. - Called from PROJECT_FILE.i:297. + Called from PROJECT_FILE.i:296. [value] Done for function __gmpz_clear PROJECT_FILE.i:282:[value] Function h: postcondition got status valid. [value] Recording results for h @@ -178,9 +160,10 @@ extern unsigned long __gmpz_get_ui(__mpz_struct const * /*[1]*/ z); extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -214,7 +197,7 @@ int f(int x) (long)((int)__e_acsl_var_6)); __e_acsl_var_8 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_7)); - e_acsl_assert(! (__e_acsl_var_8 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_8 == 0,(char *)"Postcondition", (char *)"(\\result == (int)(\\old(x)-\\old(x)))",7); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_3)); @@ -236,7 +219,7 @@ int g(int x) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)Y); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Postcondition", (char *)"(\\result == Y)",18); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -256,7 +239,7 @@ int h(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)0); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Postcondition", (char *)"(\\result == 0)",23); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.res.oracle index 76b8bb977f524c779767849fb07026c7692655f1..6a2b1b6b0c044994d81bbaac3a1c6e43bee9f908 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.res.oracle @@ -4,30 +4,31 @@ [value] Values of globals at initialization Y ∈ {1} [value] computing for function f <- main. - Called from PROJECT_FILE.i:262. + Called from PROJECT_FILE.i:263. [value] computing for function e_acsl_assert <- f <- main. - Called from PROJECT_FILE.i:237. + Called from PROJECT_FILE.i:238. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:229:[value] Function f: postcondition got status valid. +PROJECT_FILE.i:230:[value] Function f: postcondition got status valid. [value] Recording results for f [value] Done for function f [value] computing for function g <- main. - Called from PROJECT_FILE.i:263. + Called from PROJECT_FILE.i:264. [value] computing for function e_acsl_assert <- g <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:243:[value] Function g: postcondition got status valid. +PROJECT_FILE.i:244:[value] Function g: postcondition got status valid. [value] Recording results for g [value] Done for function g [value] computing for function h <- main. - Called from PROJECT_FILE.i:264. + Called from PROJECT_FILE.i:265. [value] computing for function e_acsl_assert <- h <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:250:[value] Function h: postcondition got status valid. +PROJECT_FILE.i:251:[value] Function h: postcondition got status valid. [value] Recording results for h [value] Done for function h [value] Recording results for main @@ -50,9 +51,10 @@ PROJECT_FILE.i:250:[value] Function h: postcondition got status valid. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -68,7 +70,7 @@ int f(int x) __e_acsl_var_2 = x; __e_acsl_var = x; x = 0; - e_acsl_assert(! (x == (int)((long long)__e_acsl_var - (long long)__e_acsl_var_2)), + e_acsl_assert(x == (int)((long long)__e_acsl_var - (long long)__e_acsl_var_2), (char *)"Postcondition", (char *)"(\\result == (int)(\\old(x)-\\old(x)))",7); return (x); @@ -78,8 +80,7 @@ int Y = 1; /*@ ensures \result ≡ Y; */ int g(int x) { - e_acsl_assert(! (x == Y),(char *)"Postcondition",(char *)"(\\result == Y)", - 18); + e_acsl_assert(x == Y,(char *)"Postcondition",(char *)"(\\result == Y)",18); return (x); } @@ -88,7 +89,7 @@ int h(void) { int __retres; __retres = 0; - e_acsl_assert(! (__retres == 0),(char *)"Postcondition", + e_acsl_assert(__retres == 0,(char *)"Postcondition", (char *)"(\\result == 0)",23); return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.1.res.oracle index 30b5146a613ffd113eabf85bb371221ae1f99a46..18ae5401eaac070ade62ecb978d17685dacc7da8 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.1.res.oracle @@ -2,62 +2,50 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:234:[value] Assertion got status valid. +PROJECT_FILE.i:235:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:239. + Called from PROJECT_FILE.i:240. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:240. + Called from PROJECT_FILE.i:241. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:241. + Called from PROJECT_FILE.i:242. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:242. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:243. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:245. + Called from PROJECT_FILE.i:246. [value] Done for function __gmpz_clear -PROJECT_FILE.i:249:[value] Assertion got status valid. +PROJECT_FILE.i:250:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:254. + Called from PROJECT_FILE.i:255. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:255. + Called from PROJECT_FILE.i:256. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:256. + Called from PROJECT_FILE.i:257. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:257. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:258. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:259. + Called from PROJECT_FILE.i:260. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:260. + Called from PROJECT_FILE.i:261. [value] Done for function __gmpz_clear [value] Recording results for main [value] done for function main @@ -92,9 +80,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -116,7 +105,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)4); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion", (char *)"(sizeof(int) == sizeof(x))",9); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -131,7 +120,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)4); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 == 0),(char *)"Assertion", + e_acsl_assert(__e_acsl_var_6 == 0,(char *)"Assertion", (char *)"(sizeof(\"totototototo\") == sizeof(char *))",10); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.res.oracle index eecad667ef78e7c8feb697f04c5ca7c8c7bb6ff2..2b518ac5d9fa5ba50d0a34b77b1c806b01c3375b 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.res.oracle @@ -2,14 +2,15 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:234:[value] Assertion got status valid. +PROJECT_FILE.i:235:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:235. + Called from PROJECT_FILE.i:236. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -PROJECT_FILE.i:237:[value] Assertion got status valid. +PROJECT_FILE.i:238:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:238. + Called from PROJECT_FILE.i:239. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -26,9 +27,10 @@ PROJECT_FILE.i:237:[value] Assertion got status valid. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -42,10 +44,10 @@ int main(void) int x; x = 0; /*@ assert sizeof(int) ≡ sizeof(x); */ ; - e_acsl_assert(! (4 == 4),(char *)"Assertion", + e_acsl_assert(4 == 4,(char *)"Assertion", (char *)"(sizeof(int) == sizeof(x))",9); /*@ assert sizeof("totototototo") ≡ sizeof(char *); */ ; - e_acsl_assert(! (4 == 4),(char *)"Assertion", + e_acsl_assert(4 == 4,(char *)"Assertion", (char *)"(sizeof(\"totototototo\") == sizeof(char *))",10); __retres = 0; return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.1.res.oracle index d7ce74a0b38e888cc177369101e3135fcd39ae99..59dd91e988bdc2910938334d2e0927c3f4db62eb 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.1.res.oracle @@ -3,145 +3,106 @@ [value] Initial state computed [value] Values of globals at initialization [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:242. + Called from PROJECT_FILE.i:243. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:243. + Called from PROJECT_FILE.i:244. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:245. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:246. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:246. + Called from PROJECT_FILE.i:247. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:247. + Called from PROJECT_FILE.i:248. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:259. + Called from PROJECT_FILE.i:260. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:260. + Called from PROJECT_FILE.i:261. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:261. + Called from PROJECT_FILE.i:262. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:262. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:263. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:263. + Called from PROJECT_FILE.i:264. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:264. + Called from PROJECT_FILE.i:265. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:265. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:266. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:266. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:267. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:268. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:269. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:276. + Called from PROJECT_FILE.i:277. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:277. + Called from PROJECT_FILE.i:278. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:278. + Called from PROJECT_FILE.i:279. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:279. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:280. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:280. + Called from PROJECT_FILE.i:281. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:281. + Called from PROJECT_FILE.i:282. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:294. + Called from PROJECT_FILE.i:295. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:295. + Called from PROJECT_FILE.i:296. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:296. + Called from PROJECT_FILE.i:297. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:297. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:298. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:298. + Called from PROJECT_FILE.i:299. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:299. + Called from PROJECT_FILE.i:300. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:300. + Called from PROJECT_FILE.i:301. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:301. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:302. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:302. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:303. [value] Done for function __gmpz_clear @@ -151,73 +112,55 @@ PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:305. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:306. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:337. + Called from PROJECT_FILE.i:338. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:338. + Called from PROJECT_FILE.i:339. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:339. + Called from PROJECT_FILE.i:340. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:340. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:341. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:341. + Called from PROJECT_FILE.i:342. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:342. + Called from PROJECT_FILE.i:343. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:343. + Called from PROJECT_FILE.i:344. PROJECT_FILE.i:69:[value] Function __gmpz_init: postcondition got status valid. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:344. + Called from PROJECT_FILE.i:345. PROJECT_FILE.i:133:[value] Function __gmpz_add: precondition got status valid. PROJECT_FILE.i:134:[value] Function __gmpz_add: precondition got status valid. PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid. [value] Done for function __gmpz_add [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:345. + Called from PROJECT_FILE.i:346. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:346. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:347. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:347. + Called from PROJECT_FILE.i:348. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:348. + Called from PROJECT_FILE.i:349. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:349. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:350. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:350. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:351. [value] Done for function __gmpz_clear @@ -233,53 +176,41 @@ PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid. [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:355. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:356. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:359. + Called from PROJECT_FILE.i:360. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:360. + Called from PROJECT_FILE.i:361. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:361. + Called from PROJECT_FILE.i:362. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:362. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:363. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:363. + Called from PROJECT_FILE.i:364. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:364. + Called from PROJECT_FILE.i:365. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:365. + Called from PROJECT_FILE.i:366. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:366. + Called from PROJECT_FILE.i:367. [value] Done for function __gmpz_add [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:367. + Called from PROJECT_FILE.i:368. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:368. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:369. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:369. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:370. [value] Done for function __gmpz_clear @@ -292,126 +223,114 @@ PROJECT_FILE.i:135:[value] Function __gmpz_add: precondition got status valid. [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:373. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:374. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:399. + Called from PROJECT_FILE.i:400. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:400. + Called from PROJECT_FILE.i:401. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:401. + Called from PROJECT_FILE.i:402. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:407. + Called from PROJECT_FILE.i:408. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:408. + Called from PROJECT_FILE.i:409. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:409. + Called from PROJECT_FILE.i:410. [value] Done for function __gmpz_cmp -PROJECT_FILE.i:410:[value] assigning non deterministic value for the first time +PROJECT_FILE.i:411:[value] assigning non deterministic value for the first time [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:411. + Called from PROJECT_FILE.i:412. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:412. + Called from PROJECT_FILE.i:413. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:414. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:415. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:415. + Called from PROJECT_FILE.i:416. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:416. + Called from PROJECT_FILE.i:417. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:421. + Called from PROJECT_FILE.i:422. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:422. + Called from PROJECT_FILE.i:423. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:423. + Called from PROJECT_FILE.i:424. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:425. + Called from PROJECT_FILE.i:426. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:426. + Called from PROJECT_FILE.i:427. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:434. + Called from PROJECT_FILE.i:435. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:435. + Called from PROJECT_FILE.i:436. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:436. + Called from PROJECT_FILE.i:437. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:438. + Called from PROJECT_FILE.i:439. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:439. + Called from PROJECT_FILE.i:440. [value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:441. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:442. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:443. + Called from PROJECT_FILE.i:444. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:448. + Called from PROJECT_FILE.i:449. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:449. + Called from PROJECT_FILE.i:450. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:450. + Called from PROJECT_FILE.i:451. [value] Done for function __gmpz_cmp [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:452. + Called from PROJECT_FILE.i:453. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:453. + Called from PROJECT_FILE.i:454. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:463. + Called from PROJECT_FILE.i:464. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:464. + Called from PROJECT_FILE.i:465. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init <- main. - Called from PROJECT_FILE.i:465. + Called from PROJECT_FILE.i:466. [value] Done for function __gmpz_init [value] computing for function __gmpz_add <- main. - Called from PROJECT_FILE.i:466. + Called from PROJECT_FILE.i:467. [value] Done for function __gmpz_add [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:467. + Called from PROJECT_FILE.i:468. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:468. + Called from PROJECT_FILE.i:469. [value] Done for function __gmpz_cmp -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:470. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:471. [value] Done for function __gmpz_clear @@ -421,124 +340,97 @@ PROJECT_FILE.i:410:[value] assigning non deterministic value for the first time [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:473. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:474. +[value] Done for function __gmpz_clear [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:475. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:476. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert -[value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:477. -[value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:478. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. Called from PROJECT_FILE.i:479. [value] Done for function __gmpz_clear +[value] computing for function __gmpz_clear <- main. + Called from PROJECT_FILE.i:480. +[value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:488. + Called from PROJECT_FILE.i:489. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:489. + Called from PROJECT_FILE.i:490. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:490. + Called from PROJECT_FILE.i:491. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:491. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:492. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:492. + Called from PROJECT_FILE.i:493. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:493. + Called from PROJECT_FILE.i:494. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:499. + Called from PROJECT_FILE.i:500. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:500. + Called from PROJECT_FILE.i:501. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:501. + Called from PROJECT_FILE.i:502. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:502. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:503. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:503. + Called from PROJECT_FILE.i:504. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:504. + Called from PROJECT_FILE.i:505. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:519. + Called from PROJECT_FILE.i:520. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:520. + Called from PROJECT_FILE.i:521. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:521. + Called from PROJECT_FILE.i:522. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:522. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:523. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:523. + Called from PROJECT_FILE.i:524. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:524. + Called from PROJECT_FILE.i:525. [value] Done for function __gmpz_clear [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:528. + Called from PROJECT_FILE.i:529. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:529. + Called from PROJECT_FILE.i:530. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:530. + Called from PROJECT_FILE.i:531. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:531. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -[value] Done for function exit + Called from PROJECT_FILE.i:532. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:532. + Called from PROJECT_FILE.i:533. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:533. + Called from PROJECT_FILE.i:534. [value] Done for function __gmpz_clear [value] Recording results for main [value] done for function main @@ -585,9 +477,10 @@ extern void __gmpz_add(__mpz_struct * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -612,7 +505,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)1); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Postcondition", (char *)"(x == 1)",9); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); @@ -631,12 +524,12 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_5),(long)2); __e_acsl_var_6 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_4), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_6 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_6 == 0,(char *)"Postcondition", (char *)"(x == 2)",12); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_7),(long)y); __e_acsl_var_8 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_7), (__mpz_struct const *)(__e_acsl_var_5)); - e_acsl_assert(! (__e_acsl_var_8 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_8 == 0,(char *)"Postcondition", (char *)"(y == 2)",13); __gmpz_clear((__mpz_struct *)(__e_acsl_var_4)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_5)); @@ -652,7 +545,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_10),(long)2); __e_acsl_var_11 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_9), (__mpz_struct const *)(__e_acsl_var_10)); - e_acsl_assert(! (__e_acsl_var_11 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_11 == 0,(char *)"Precondition", (char *)"(x == 2)",16); __gmpz_clear((__mpz_struct *)(__e_acsl_var_9)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_10)); @@ -672,13 +565,13 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_13),(long)3); __e_acsl_var_14 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_12), (__mpz_struct const *)(__e_acsl_var_13)); - e_acsl_assert(! (__e_acsl_var_14 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_14 == 0,(char *)"Precondition", (char *)"(x == 3)",19); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_15),(long)y); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_16),(long)2); __e_acsl_var_17 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_15), (__mpz_struct const *)(__e_acsl_var_16)); - e_acsl_assert(! (__e_acsl_var_17 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_17 == 0,(char *)"Precondition", (char *)"(y == 2)",20); __gmpz_clear((__mpz_struct *)(__e_acsl_var_12)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_13)); @@ -719,7 +612,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_19),(long)5); __e_acsl_var_20 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_18), (__mpz_struct const *)(__e_acsl_var_19)); - e_acsl_assert(! (__e_acsl_var_20 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_20 == 0,(char *)"Precondition", (char *)"(x == 5)",24); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_21),(long)3); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_22),(long)y); @@ -729,12 +622,12 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_22)); __e_acsl_var_24 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_18), (__mpz_struct const *)(__e_acsl_var_23)); - e_acsl_assert(! (__e_acsl_var_24 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_24 == 0,(char *)"Precondition", (char *)"(x == 3+y)",27); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_25),(long)2); __e_acsl_var_26 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_22), (__mpz_struct const *)(__e_acsl_var_25)); - e_acsl_assert(! (__e_acsl_var_26 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_26 == 0,(char *)"Precondition", (char *)"(y == 2)",28); __gmpz_clear((__mpz_struct *)(__e_acsl_var_18)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_19)); @@ -749,7 +642,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_28),(long)3); __e_acsl_var_29 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_27), (__mpz_struct const *)(__e_acsl_var_28)); - e_acsl_assert(! (__e_acsl_var_29 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_29 == 0,(char *)"Postcondition", (char *)"(x == 3)",25); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_30),(long)y); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_31),(long)1); @@ -759,7 +652,7 @@ int main(void) (__mpz_struct const *)(__e_acsl_var_31)); __e_acsl_var_33 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_27), (__mpz_struct const *)(__e_acsl_var_32)); - e_acsl_assert(! (__e_acsl_var_33 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_33 == 0,(char *)"Postcondition", (char *)"(x == y+1)",29); __gmpz_clear((__mpz_struct *)(__e_acsl_var_27)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_28)); @@ -808,7 +701,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_37)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_38)); } - e_acsl_assert(! __e_acsl_var_40,(char *)"Precondition", + e_acsl_assert(__e_acsl_var_40,(char *)"Precondition", (char *)"(x == 1 ==> x == 0)",34); __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_41),(long)3); __e_acsl_var_42 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_34), @@ -839,7 +732,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_47)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_48)); } - e_acsl_assert(! __e_acsl_var_50,(char *)"Precondition", + e_acsl_assert(__e_acsl_var_50,(char *)"Precondition", (char *)"(x == 3 && y == 2 ==> x == 3)",38); __e_acsl_var_51 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_34), (__mpz_struct const *)(__e_acsl_var_41)); @@ -878,7 +771,7 @@ int main(void) __gmpz_clear((__mpz_struct *)(__e_acsl_var_58)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_59)); } - e_acsl_assert(! __e_acsl_var_61,(char *)"Precondition", + e_acsl_assert(__e_acsl_var_61,(char *)"Precondition", (char *)"(x == 3 && y == 2 ==> x+y == 5)",39); __gmpz_clear((__mpz_struct *)(__e_acsl_var_34)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_35)); @@ -895,7 +788,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_63),(long)5); __e_acsl_var_64 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_62), (__mpz_struct const *)(__e_acsl_var_63)); - e_acsl_assert(! (__e_acsl_var_64 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_64 == 0,(char *)"Precondition", (char *)"(x == 5)",42); __gmpz_clear((__mpz_struct *)(__e_acsl_var_62)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_63)); @@ -908,7 +801,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_66),(long)2); __e_acsl_var_67 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_65), (__mpz_struct const *)(__e_acsl_var_66)); - e_acsl_assert(! (__e_acsl_var_67 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_67 == 0,(char *)"Precondition", (char *)"(y == 2)",43); __gmpz_clear((__mpz_struct *)(__e_acsl_var_65)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_66)); @@ -930,7 +823,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_69),(long)7); __e_acsl_var_70 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_68), (__mpz_struct const *)(__e_acsl_var_69)); - e_acsl_assert(! (__e_acsl_var_70 == 0),(char *)"Precondition", + e_acsl_assert(__e_acsl_var_70 == 0,(char *)"Precondition", (char *)"(x == 7)",46); __gmpz_clear((__mpz_struct *)(__e_acsl_var_68)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_69)); @@ -941,7 +834,7 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_72),(long)7); __e_acsl_var_73 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var_71), (__mpz_struct const *)(__e_acsl_var_72)); - e_acsl_assert(! (__e_acsl_var_73 == 0),(char *)"Postcondition", + e_acsl_assert(__e_acsl_var_73 == 0,(char *)"Postcondition", (char *)"(x == 7)",47); __gmpz_clear((__mpz_struct *)(__e_acsl_var_71)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_72)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.res.oracle index c6eb51fa5722502b569b136721639aaa7879a642..3cab7e2a66b80951487ca06f2a19a43b1617e7d1 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.res.oracle @@ -3,11 +3,8 @@ [value] Initial state computed [value] Values of globals at initialization [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:238. -[value] Recording results for e_acsl_assert -[value] Done for function e_acsl_assert -[value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:239. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. @@ -15,11 +12,11 @@ [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:249. + Called from PROJECT_FILE.i:246. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:253. + Called from PROJECT_FILE.i:250. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. @@ -27,7 +24,7 @@ [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:267. + Called from PROJECT_FILE.i:255. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. @@ -35,11 +32,11 @@ [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:270. + Called from PROJECT_FILE.i:269. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:272. + Called from PROJECT_FILE.i:271. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. @@ -47,31 +44,35 @@ [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:296. + Called from PROJECT_FILE.i:274. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:301. + Called from PROJECT_FILE.i:297. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:307. + Called from PROJECT_FILE.i:302. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:313. + Called from PROJECT_FILE.i:308. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:315. + Called from PROJECT_FILE.i:314. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:320. + Called from PROJECT_FILE.i:316. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:322. + Called from PROJECT_FILE.i:321. +[value] Recording results for e_acsl_assert +[value] Done for function e_acsl_assert +[value] computing for function e_acsl_assert <- main. + Called from PROJECT_FILE.i:323. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -89,9 +90,10 @@ extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -107,26 +109,25 @@ int main(void) x = 0; y = 2; /*@ ensures x ≡ 1; */ - { - x = 1; - e_acsl_assert(! (x == 1),(char *)"Postcondition",(char *)"(x == 1)",9); + { x = 1; + e_acsl_assert(x == 1,(char *)"Postcondition",(char *)"(x == 1)",9); } /*@ ensures x ≡ 2; ensures y ≡ 2; */ { x = 2; - e_acsl_assert(! (x == 2),(char *)"Postcondition",(char *)"(x == 2)",12); - e_acsl_assert(! (y == 2),(char *)"Postcondition",(char *)"(y == 2)",13); + e_acsl_assert(x == 2,(char *)"Postcondition",(char *)"(x == 2)",12); + e_acsl_assert(y == 2,(char *)"Postcondition",(char *)"(y == 2)",13); } /*@ requires x ≡ 2; */ - e_acsl_assert(! (x == 2),(char *)"Precondition",(char *)"(x == 2)",16); + e_acsl_assert(x == 2,(char *)"Precondition",(char *)"(x == 2)",16); x ++; /*@ requires x ≡ 3; requires y ≡ 2; */ - e_acsl_assert(! (x == 3),(char *)"Precondition",(char *)"(x == 3)",19); - e_acsl_assert(! (y == 2),(char *)"Precondition",(char *)"(y == 2)",20); + e_acsl_assert(x == 3,(char *)"Precondition",(char *)"(x == 3)",19); + e_acsl_assert(y == 2,(char *)"Precondition",(char *)"(y == 2)",20); x += y; /*@ behavior b1: requires x ≡ 5; @@ -139,13 +140,13 @@ int main(void) */ { - e_acsl_assert(! (x == 5),(char *)"Precondition",(char *)"(x == 5)",24); - e_acsl_assert(! ((long long)x == (long long)3 + (long long)y), + e_acsl_assert(x == 5,(char *)"Precondition",(char *)"(x == 5)",24); + e_acsl_assert((long long)x == (long long)3 + (long long)y, (char *)"Precondition",(char *)"(x == 3+y)",27); - e_acsl_assert(! (y == 2),(char *)"Precondition",(char *)"(y == 2)",28); + e_acsl_assert(y == 2,(char *)"Precondition",(char *)"(y == 2)",28); x = 3; - e_acsl_assert(! (x == 3),(char *)"Postcondition",(char *)"(x == 3)",25); - e_acsl_assert(! ((long long)x == (long long)y + (long long)1), + e_acsl_assert(x == 3,(char *)"Postcondition",(char *)"(x == 3)",25); + e_acsl_assert((long long)x == (long long)y + (long long)1, (char *)"Postcondition",(char *)"(x == y+1)",29); } @@ -168,34 +169,34 @@ int main(void) int __e_acsl_var_5; if (! (x == 1)) { __e_acsl_var = 1; } else { __e_acsl_var = x == 0; } - e_acsl_assert(! __e_acsl_var,(char *)"Precondition", + e_acsl_assert(__e_acsl_var,(char *)"Precondition", (char *)"(x == 1 ==> x == 0)",34); if (x == 3) { __e_acsl_var_2 = y == 2; } else { __e_acsl_var_2 = 0; } if (! __e_acsl_var_2) { __e_acsl_var_3 = 1; } else { __e_acsl_var_3 = x == 3; } - e_acsl_assert(! __e_acsl_var_3,(char *)"Precondition", + e_acsl_assert(__e_acsl_var_3,(char *)"Precondition", (char *)"(x == 3 && y == 2 ==> x == 3)",38); if (x == 3) { __e_acsl_var_4 = y == 2; } else { __e_acsl_var_4 = 0; } if (! __e_acsl_var_4) { __e_acsl_var_5 = 1; } else { __e_acsl_var_5 = (long long)x + (long long)y == (long long)5; } - e_acsl_assert(! __e_acsl_var_5,(char *)"Precondition", + e_acsl_assert(__e_acsl_var_5,(char *)"Precondition", (char *)"(x == 3 && y == 2 ==> x+y == 5)",39); x += y; } /*@ requires x ≡ 5; */ - e_acsl_assert(! (x == 5),(char *)"Precondition",(char *)"(x == 5)",42); + e_acsl_assert(x == 5,(char *)"Precondition",(char *)"(x == 5)",42); /*@ requires y ≡ 2; */ - e_acsl_assert(! (y == 2),(char *)"Precondition",(char *)"(y == 2)",43); + e_acsl_assert(y == 2,(char *)"Precondition",(char *)"(y == 2)",43); x += y; /*@ requires x ≡ 7; ensures x ≡ 7; */ { - e_acsl_assert(! (x == 7),(char *)"Precondition",(char *)"(x == 7)",46); + e_acsl_assert(x == 7,(char *)"Precondition",(char *)"(x == 7)",46); __retres = 0; - e_acsl_assert(! (x == 7),(char *)"Postcondition",(char *)"(x == 7)",47); + e_acsl_assert(x == 7,(char *)"Postcondition",(char *)"(x == 7)",47); } return (__retres); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.1.res.oracle index a5bfbd3ed539f635b395b0f4810616f03687746a..33190956028542ba90e005e2b29c30c44f25dff5 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.1.res.oracle @@ -2,9 +2,10 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:234:[value] Assertion got status valid. +PROJECT_FILE.i:235:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:235. + Called from PROJECT_FILE.i:236. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -21,9 +22,10 @@ PROJECT_FILE.i:234:[value] Assertion got status valid. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -37,7 +39,7 @@ int main(void) int x; x = 0; /*@ assert \true; */ ; - e_acsl_assert(0,(char *)"Assertion",(char *)"(\\true)",9); + e_acsl_assert(1,(char *)"Assertion",(char *)"(\\true)",9); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.res.oracle index a5bfbd3ed539f635b395b0f4810616f03687746a..33190956028542ba90e005e2b29c30c44f25dff5 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.res.oracle @@ -2,9 +2,10 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:234:[value] Assertion got status valid. +PROJECT_FILE.i:235:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:235. + Called from PROJECT_FILE.i:236. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -21,9 +22,10 @@ PROJECT_FILE.i:234:[value] Assertion got status valid. extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -37,7 +39,7 @@ int main(void) int x; x = 0; /*@ assert \true; */ ; - e_acsl_assert(0,(char *)"Assertion",(char *)"(\\true)",9); + e_acsl_assert(1,(char *)"Assertion",(char *)"(\\true)",9); __retres = 0; return (__retres); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.1.res.oracle index 4c419a07f7e93ec9e4ee55d0699043646c274250..dd6698bb3bc52d8cb85914ea42c88c9f8bbc72ed 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.1.res.oracle @@ -2,37 +2,31 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:235:[value] Assertion got status valid. +PROJECT_FILE.i:236:[value] Assertion got status valid. [value] computing for function __gmpz_init_set_ui <- main. - Called from PROJECT_FILE.i:240. + Called from PROJECT_FILE.i:241. PROJECT_FILE.i:78:[value] Function __gmpz_init_set_ui: postcondition got status valid. [value] Done for function __gmpz_init_set_ui [value] computing for function __gmpz_init_set_si <- main. - Called from PROJECT_FILE.i:241. + Called from PROJECT_FILE.i:242. PROJECT_FILE.i:82:[value] Function __gmpz_init_set_si: postcondition got status valid. [value] Done for function __gmpz_init_set_si [value] computing for function __gmpz_cmp <- main. - Called from PROJECT_FILE.i:242. + Called from PROJECT_FILE.i:243. PROJECT_FILE.i:119:[value] Function __gmpz_cmp: precondition got status valid. PROJECT_FILE.i:120:[value] Function __gmpz_cmp: precondition got status valid. [value] Done for function __gmpz_cmp [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:243. -[value] computing for function printf <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:223. -[value] Done for function printf -[value] computing for function exit <- e_acsl_assert <- main. - Called from PROJECT_FILE.i:225. -PROJECT_FILE.i:211:[value] Function exit: postcondition got status invalid. -[value] Done for function exit + Called from PROJECT_FILE.i:244. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status unknown. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:244. + Called from PROJECT_FILE.i:245. PROJECT_FILE.i:111:[value] Function __gmpz_clear: precondition got status valid. [value] Done for function __gmpz_clear [value] computing for function __gmpz_clear <- main. - Called from PROJECT_FILE.i:245. + Called from PROJECT_FILE.i:246. [value] Done for function __gmpz_clear [value] Recording results for main [value] done for function main @@ -72,9 +66,10 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -96,8 +91,8 @@ int main(void) __gmpz_init_set_si((__mpz_struct *)(__e_acsl_var_2),(long)0); __e_acsl_var_3 = __gmpz_cmp((__mpz_struct const *)(__e_acsl_var), (__mpz_struct const *)(__e_acsl_var_2)); - e_acsl_assert(! (__e_acsl_var_3 == 0),(char *)"Assertion", - (char *)"(x == 0)",11); + e_acsl_assert(__e_acsl_var_3 == 0,(char *)"Assertion",(char *)"(x == 0)", + 11); __gmpz_clear((__mpz_struct *)(__e_acsl_var)); __gmpz_clear((__mpz_struct *)(__e_acsl_var_2)); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.res.oracle index a9c72ae557ade60e130b605860df2dcfe0841b44..c46b994892b42b98015da0fe783ab59a81e567b2 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.res.oracle @@ -2,9 +2,10 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization -PROJECT_FILE.i:235:[value] Assertion got status valid. +PROJECT_FILE.i:236:[value] Assertion got status valid. [value] computing for function e_acsl_assert <- main. - Called from PROJECT_FILE.i:236. + Called from PROJECT_FILE.i:237. +PROJECT_FILE.i:221:[value] Function e_acsl_assert: precondition got status valid. [value] Recording results for e_acsl_assert [value] Done for function e_acsl_assert [value] Recording results for main @@ -22,9 +23,10 @@ typedef unsigned char uint8; extern void exit(int status); /*@ assigns \nothing; */ extern int printf(char const * , ...); +/*@ requires predicate ≢ 0; */ void e_acsl_assert(int predicate, char *kind, char *pred_txt, int line) { - if (predicate) { + if (! predicate) { printf("%s failed at line %d.\nThe failing predicate is:\n%s.\n",kind, line,pred_txt); exit(1); @@ -38,7 +40,7 @@ int main(void) uint8 x; x = (unsigned char)0; /*@ assert x ≡ 0; */ ; - e_acsl_assert(! ((int)x == 0),(char *)"Assertion",(char *)"(x == 0)",11); + e_acsl_assert((int)x == 0,(char *)"Assertion",(char *)"(x == 0)",11); __retres = 0; return (__retres); }