From 5e1fe19c71fd5cbe2d136b6fe68dc6a83be93cd5 Mon Sep 17 00:00:00 2001 From: "Fonenantsoa Maurica (fmaurica)" <maurica.fonenantsoa@gmail.com> Date: Tue, 27 Mar 2018 20:02:51 +0200 Subject: [PATCH] Test for name capturing. --- src/plugins/e-acsl/tests/gmp/let.c | 3 + src/plugins/e-acsl/tests/gmp/oracle/gen_let.c | 75 ++++----- .../e-acsl/tests/gmp/oracle/gen_let2.c | 148 ++++++++++-------- .../e-acsl/tests/gmp/oracle/let.0.res.oracle | 26 ++- .../e-acsl/tests/gmp/oracle/let.1.res.oracle | 29 ++-- 5 files changed, 154 insertions(+), 127 deletions(-) diff --git a/src/plugins/e-acsl/tests/gmp/let.c b/src/plugins/e-acsl/tests/gmp/let.c index 388a2646cf0..b42c297fbcc 100644 --- a/src/plugins/e-acsl/tests/gmp/let.c +++ b/src/plugins/e-acsl/tests/gmp/let.c @@ -13,6 +13,9 @@ int main(void) { /*@ assert \let u = 1; (\let v = u + 1; v) == 2; */ ; + /*@ assert + \let u = 1; + (\let u = u + 1; u) == 2; */ ; long m = 0x7fffffffffffffffL; /*@ assert (\let u = m; u*u) > m; */ ; diff --git a/src/plugins/e-acsl/tests/gmp/oracle/gen_let.c b/src/plugins/e-acsl/tests/gmp/oracle/gen_let.c index 9bf65bd1632..33945c99959 100644 --- a/src/plugins/e-acsl/tests/gmp/oracle/gen_let.c +++ b/src/plugins/e-acsl/tests/gmp/oracle/gen_let.c @@ -14,7 +14,6 @@ int main(void) int __retres; union __anonunion_s_2 s; __e_acsl_memory_init((int *)0,(char ***)0,(size_t)8); - __e_acsl_store_block((void *)(& s),(size_t)8); int n = -2; /*@ assert \let u = n * n; u ≥ 0; */ { @@ -48,89 +47,93 @@ int main(void) __e_acsl_assert(__gen_e_acsl_v_2 == 2,(char *)"Assertion",(char *)"main", (char *)"\\let u = 1; (\\let v = u + 1; v) == 2",14); } + /*@ assert \let u = 1; (\let u = u + 1; u) ≡ 2; */ + { + int __gen_e_acsl_u_5; + int __gen_e_acsl_u_6; + __gen_e_acsl_u_5 = 1; + __gen_e_acsl_u_6 = __gen_e_acsl_u_5 + 1; + __e_acsl_assert(__gen_e_acsl_u_6 == 2,(char *)"Assertion",(char *)"main", + (char *)"\\let u = 1; (\\let u = u + 1; u) == 2",17); + } long m = 0x7fffffffffffffffL; - __e_acsl_store_block((void *)(& m),(size_t)8); - __e_acsl_full_init((void *)(& m)); /*@ assert (\let u = m; u * u) > m; */ { - long __gen_e_acsl_u_5; - __e_acsl_mpz_t __gen_e_acsl_u_6; + long __gen_e_acsl_u_7; + __e_acsl_mpz_t __gen_e_acsl_u_8; __e_acsl_mpz_t __gen_e_acsl_mul; __e_acsl_mpz_t __gen_e_acsl_m; int __gen_e_acsl_gt; - __gen_e_acsl_u_5 = m; - __gmpz_init_set_si(__gen_e_acsl_u_6,__gen_e_acsl_u_5); + __gen_e_acsl_u_7 = m; + __gmpz_init_set_si(__gen_e_acsl_u_8,__gen_e_acsl_u_7); __gmpz_init(__gen_e_acsl_mul); __gmpz_mul(__gen_e_acsl_mul, - (__e_acsl_mpz_struct const *)(__gen_e_acsl_u_6), - (__e_acsl_mpz_struct const *)(__gen_e_acsl_u_6)); + (__e_acsl_mpz_struct const *)(__gen_e_acsl_u_8), + (__e_acsl_mpz_struct const *)(__gen_e_acsl_u_8)); __gmpz_init_set_si(__gen_e_acsl_m,m); __gen_e_acsl_gt = __gmpz_cmp((__e_acsl_mpz_struct const *)(__gen_e_acsl_mul), (__e_acsl_mpz_struct const *)(__gen_e_acsl_m)); __e_acsl_assert(__gen_e_acsl_gt > 0,(char *)"Assertion",(char *)"main", - (char *)"(\\let u = m; u * u) > m",18); - __gmpz_clear(__gen_e_acsl_u_6); + (char *)"(\\let u = m; u * u) > m",21); + __gmpz_clear(__gen_e_acsl_u_8); __gmpz_clear(__gen_e_acsl_mul); __gmpz_clear(__gen_e_acsl_m); } char c = (char)'a'; /*@ assert \let u = 'b'; c < u; */ { - int __gen_e_acsl_u_7; - __gen_e_acsl_u_7 = 'b'; - __e_acsl_assert((int)c < __gen_e_acsl_u_7,(char *)"Assertion", - (char *)"main",(char *)"\\let u = \'b\'; c < u",21); + int __gen_e_acsl_u_9; + __gen_e_acsl_u_9 = 'b'; + __e_acsl_assert((int)c < __gen_e_acsl_u_9,(char *)"Assertion", + (char *)"main",(char *)"\\let u = \'b\'; c < u",24); } float f = 1.0f; __e_acsl_store_block((void *)(& f),(size_t)4); __e_acsl_full_init((void *)(& f)); /*@ assert \let u = f; u ≡ f; */ { - float __gen_e_acsl_u_8; - __gen_e_acsl_u_8 = f; - __e_acsl_assert(__gen_e_acsl_u_8 == f,(char *)"Assertion",(char *)"main", - (char *)"\\let u = f; u == f",24); + float __gen_e_acsl_u_10; + __gen_e_acsl_u_10 = f; + __e_acsl_assert(__gen_e_acsl_u_10 == f,(char *)"Assertion", + (char *)"main",(char *)"\\let u = f; u == f",27); } int t[4] = {1, 2, 3, 4}; /*@ assert \let u = &t[1]; 1 ≡ 1; */ { - int * /*[4]*/ __gen_e_acsl_u_9; - __gen_e_acsl_u_9 = & t[1]; + int * /*[4]*/ __gen_e_acsl_u_11; + __gen_e_acsl_u_11 = & t[1]; __e_acsl_assert(1,(char *)"Assertion",(char *)"main", - (char *)"\\let u = &t[1]; 1 == 1",27); + (char *)"\\let u = &t[1]; 1 == 1",30); } /*@ assert (\let u = &t[1]; 1) ≡ 1; */ { - int * /*[4]*/ __gen_e_acsl_u_10; - __gen_e_acsl_u_10 = & t[1]; + int * /*[4]*/ __gen_e_acsl_u_12; + __gen_e_acsl_u_12 = & t[1]; __e_acsl_assert(1,(char *)"Assertion",(char *)"main", - (char *)"(\\let u = &t[1]; 1) == 1",29); + (char *)"(\\let u = &t[1]; 1) == 1",32); } struct __anonstruct_r_1 r = {.x = 1, .y = 2}; __e_acsl_store_block((void *)(& r),(size_t)8); __e_acsl_full_init((void *)(& r)); /*@ assert \let u = r; u.x + u.y ≡ 3; */ { - struct __anonstruct_r_1 __gen_e_acsl_u_11; - __gen_e_acsl_u_11 = r; - __e_acsl_assert(__gen_e_acsl_u_11.x + (long)__gen_e_acsl_u_11.y == 3L, + struct __anonstruct_r_1 __gen_e_acsl_u_13; + __gen_e_acsl_u_13 = r; + __e_acsl_assert(__gen_e_acsl_u_13.x + (long)__gen_e_acsl_u_13.y == 3L, (char *)"Assertion",(char *)"main", - (char *)"\\let u = r; u.x + u.y == 3",32); + (char *)"\\let u = r; u.x + u.y == 3",35); } - __e_acsl_initialize((void *)(& s.x),sizeof(int)); s.x = 5; /*@ assert (\let u = s; u.x) > 0; */ { - union __anonunion_s_2 __gen_e_acsl_u_12; - __gen_e_acsl_u_12 = s; - __e_acsl_assert(__gen_e_acsl_u_12.x > 0,(char *)"Assertion", - (char *)"main",(char *)"(\\let u = s; u.x) > 0",36); + union __anonunion_s_2 __gen_e_acsl_u_14; + __gen_e_acsl_u_14 = s; + __e_acsl_assert(__gen_e_acsl_u_14.x > 0,(char *)"Assertion", + (char *)"main",(char *)"(\\let u = s; u.x) > 0",39); } __retres = 0; - __e_acsl_delete_block((void *)(& s)); __e_acsl_delete_block((void *)(& r)); __e_acsl_delete_block((void *)(& f)); - __e_acsl_delete_block((void *)(& m)); __e_acsl_memory_clean(); return __retres; } diff --git a/src/plugins/e-acsl/tests/gmp/oracle/gen_let2.c b/src/plugins/e-acsl/tests/gmp/oracle/gen_let2.c index ffcf544f6ad..96b37ea579d 100644 --- a/src/plugins/e-acsl/tests/gmp/oracle/gen_let2.c +++ b/src/plugins/e-acsl/tests/gmp/oracle/gen_let2.c @@ -14,7 +14,6 @@ int main(void) int __retres; union __anonunion_s_2 s; __e_acsl_memory_init((int *)0,(char ***)0,(size_t)8); - __e_acsl_store_block((void *)(& s),(size_t)8); int n = -2; /*@ assert \let u = n * n; u ≥ 0; */ { @@ -132,121 +131,146 @@ int main(void) __gmpz_clear(__gen_e_acsl_add_3); __gmpz_clear(__gen_e_acsl__8); } + /*@ assert \let u = 1; (\let u = u + 1; u) ≡ 2; */ + { + int __gen_e_acsl_u_6; + __e_acsl_mpz_t __gen_e_acsl_u_7; + __e_acsl_mpz_t __gen_e_acsl_u_8; + __e_acsl_mpz_t __gen_e_acsl__9; + __e_acsl_mpz_t __gen_e_acsl_add_4; + __e_acsl_mpz_t __gen_e_acsl__10; + int __gen_e_acsl_eq_3; + __gen_e_acsl_u_6 = 1; + __gmpz_init_set_si(__gen_e_acsl_u_8,(long)__gen_e_acsl_u_6); + __gmpz_init_set_si(__gen_e_acsl__9,1L); + __gmpz_init(__gen_e_acsl_add_4); + __gmpz_add(__gen_e_acsl_add_4, + (__e_acsl_mpz_struct const *)(__gen_e_acsl_u_8), + (__e_acsl_mpz_struct const *)(__gen_e_acsl__9)); + __gmpz_init_set(__gen_e_acsl_u_7, + (__e_acsl_mpz_struct const *)(__gen_e_acsl_add_4)); + __gmpz_init_set_si(__gen_e_acsl__10,2L); + __gen_e_acsl_eq_3 = __gmpz_cmp((__e_acsl_mpz_struct const *)(__gen_e_acsl_u_7), + (__e_acsl_mpz_struct const *)(__gen_e_acsl__10)); + __e_acsl_assert(__gen_e_acsl_eq_3 == 0,(char *)"Assertion", + (char *)"main", + (char *)"\\let u = 1; (\\let u = u + 1; u) == 2",17); + __gmpz_clear(__gen_e_acsl_u_7); + __gmpz_clear(__gen_e_acsl_u_8); + __gmpz_clear(__gen_e_acsl__9); + __gmpz_clear(__gen_e_acsl_add_4); + __gmpz_clear(__gen_e_acsl__10); + } long m = 0x7fffffffffffffffL; - __e_acsl_store_block((void *)(& m),(size_t)8); - __e_acsl_full_init((void *)(& m)); /*@ assert (\let u = m; u * u) > m; */ { - long __gen_e_acsl_u_6; - __e_acsl_mpz_t __gen_e_acsl_u_7; + long __gen_e_acsl_u_9; + __e_acsl_mpz_t __gen_e_acsl_u_10; __e_acsl_mpz_t __gen_e_acsl_mul_3; __e_acsl_mpz_t __gen_e_acsl_m; int __gen_e_acsl_gt_2; - __gen_e_acsl_u_6 = m; - __gmpz_init_set_si(__gen_e_acsl_u_7,__gen_e_acsl_u_6); + __gen_e_acsl_u_9 = m; + __gmpz_init_set_si(__gen_e_acsl_u_10,__gen_e_acsl_u_9); __gmpz_init(__gen_e_acsl_mul_3); __gmpz_mul(__gen_e_acsl_mul_3, - (__e_acsl_mpz_struct const *)(__gen_e_acsl_u_7), - (__e_acsl_mpz_struct const *)(__gen_e_acsl_u_7)); + (__e_acsl_mpz_struct const *)(__gen_e_acsl_u_10), + (__e_acsl_mpz_struct const *)(__gen_e_acsl_u_10)); __gmpz_init_set_si(__gen_e_acsl_m,m); __gen_e_acsl_gt_2 = __gmpz_cmp((__e_acsl_mpz_struct const *)(__gen_e_acsl_mul_3), (__e_acsl_mpz_struct const *)(__gen_e_acsl_m)); __e_acsl_assert(__gen_e_acsl_gt_2 > 0,(char *)"Assertion",(char *)"main", - (char *)"(\\let u = m; u * u) > m",18); - __gmpz_clear(__gen_e_acsl_u_7); + (char *)"(\\let u = m; u * u) > m",21); + __gmpz_clear(__gen_e_acsl_u_10); __gmpz_clear(__gen_e_acsl_mul_3); __gmpz_clear(__gen_e_acsl_m); } char c = (char)'a'; /*@ assert \let u = 'b'; c < u; */ { - int __gen_e_acsl_u_8; + int __gen_e_acsl_u_11; __e_acsl_mpz_t __gen_e_acsl_c; - __e_acsl_mpz_t __gen_e_acsl_u_9; + __e_acsl_mpz_t __gen_e_acsl_u_12; int __gen_e_acsl_lt; - __gen_e_acsl_u_8 = 'b'; + __gen_e_acsl_u_11 = 'b'; __gmpz_init_set_si(__gen_e_acsl_c,(long)c); - __gmpz_init_set_si(__gen_e_acsl_u_9,(long)__gen_e_acsl_u_8); + __gmpz_init_set_si(__gen_e_acsl_u_12,(long)__gen_e_acsl_u_11); __gen_e_acsl_lt = __gmpz_cmp((__e_acsl_mpz_struct const *)(__gen_e_acsl_c), - (__e_acsl_mpz_struct const *)(__gen_e_acsl_u_9)); + (__e_acsl_mpz_struct const *)(__gen_e_acsl_u_12)); __e_acsl_assert(__gen_e_acsl_lt < 0,(char *)"Assertion",(char *)"main", - (char *)"\\let u = \'b\'; c < u",21); + (char *)"\\let u = \'b\'; c < u",24); __gmpz_clear(__gen_e_acsl_c); - __gmpz_clear(__gen_e_acsl_u_9); + __gmpz_clear(__gen_e_acsl_u_12); } float f = 1.0f; __e_acsl_store_block((void *)(& f),(size_t)4); __e_acsl_full_init((void *)(& f)); /*@ assert \let u = f; u ≡ f; */ { - float __gen_e_acsl_u_10; - __gen_e_acsl_u_10 = f; - __e_acsl_assert(__gen_e_acsl_u_10 == f,(char *)"Assertion", - (char *)"main",(char *)"\\let u = f; u == f",24); + float __gen_e_acsl_u_13; + __gen_e_acsl_u_13 = f; + __e_acsl_assert(__gen_e_acsl_u_13 == f,(char *)"Assertion", + (char *)"main",(char *)"\\let u = f; u == f",27); } int t[4] = {1, 2, 3, 4}; /*@ assert \let u = &t[1]; 1 ≡ 1; */ { - int * /*[4]*/ __gen_e_acsl_u_11; - __e_acsl_mpz_t __gen_e_acsl__9; - int __gen_e_acsl_eq_3; - __gen_e_acsl_u_11 = & t[1]; - __gmpz_init_set_si(__gen_e_acsl__9,1L); - __gen_e_acsl_eq_3 = __gmpz_cmp((__e_acsl_mpz_struct const *)(__gen_e_acsl__9), - (__e_acsl_mpz_struct const *)(__gen_e_acsl__9)); - __e_acsl_assert(__gen_e_acsl_eq_3 == 0,(char *)"Assertion", - (char *)"main",(char *)"\\let u = &t[1]; 1 == 1",27); - __gmpz_clear(__gen_e_acsl__9); + int * /*[4]*/ __gen_e_acsl_u_14; + __e_acsl_mpz_t __gen_e_acsl__11; + int __gen_e_acsl_eq_4; + __gen_e_acsl_u_14 = & t[1]; + __gmpz_init_set_si(__gen_e_acsl__11,1L); + __gen_e_acsl_eq_4 = __gmpz_cmp((__e_acsl_mpz_struct const *)(__gen_e_acsl__11), + (__e_acsl_mpz_struct const *)(__gen_e_acsl__11)); + __e_acsl_assert(__gen_e_acsl_eq_4 == 0,(char *)"Assertion", + (char *)"main",(char *)"\\let u = &t[1]; 1 == 1",30); + __gmpz_clear(__gen_e_acsl__11); } /*@ assert (\let u = &t[1]; 1) ≡ 1; */ { - int * /*[4]*/ __gen_e_acsl_u_12; - __gen_e_acsl_u_12 = & t[1]; + int * /*[4]*/ __gen_e_acsl_u_15; + __gen_e_acsl_u_15 = & t[1]; __e_acsl_assert(1,(char *)"Assertion",(char *)"main", - (char *)"(\\let u = &t[1]; 1) == 1",29); + (char *)"(\\let u = &t[1]; 1) == 1",32); } struct __anonstruct_r_1 r = {.x = 1, .y = 2}; __e_acsl_store_block((void *)(& r),(size_t)8); __e_acsl_full_init((void *)(& r)); /*@ assert \let u = r; u.x + u.y ≡ 3; */ { - struct __anonstruct_r_1 __gen_e_acsl_u_13; - __e_acsl_mpz_t __gen_e_acsl__10; - __e_acsl_mpz_t __gen_e_acsl__11; - __e_acsl_mpz_t __gen_e_acsl_add_4; + struct __anonstruct_r_1 __gen_e_acsl_u_16; __e_acsl_mpz_t __gen_e_acsl__12; - int __gen_e_acsl_eq_4; - __gen_e_acsl_u_13 = r; - __gmpz_init_set_si(__gen_e_acsl__10,(long)__gen_e_acsl_u_13.x); - __gmpz_init_set_si(__gen_e_acsl__11,(long)__gen_e_acsl_u_13.y); - __gmpz_init(__gen_e_acsl_add_4); - __gmpz_add(__gen_e_acsl_add_4, - (__e_acsl_mpz_struct const *)(__gen_e_acsl__10), - (__e_acsl_mpz_struct const *)(__gen_e_acsl__11)); - __gmpz_init_set_si(__gen_e_acsl__12,3L); - __gen_e_acsl_eq_4 = __gmpz_cmp((__e_acsl_mpz_struct const *)(__gen_e_acsl_add_4), - (__e_acsl_mpz_struct const *)(__gen_e_acsl__12)); - __e_acsl_assert(__gen_e_acsl_eq_4 == 0,(char *)"Assertion", - (char *)"main",(char *)"\\let u = r; u.x + u.y == 3",32); - __gmpz_clear(__gen_e_acsl__10); - __gmpz_clear(__gen_e_acsl__11); - __gmpz_clear(__gen_e_acsl_add_4); + __e_acsl_mpz_t __gen_e_acsl__13; + __e_acsl_mpz_t __gen_e_acsl_add_5; + __e_acsl_mpz_t __gen_e_acsl__14; + int __gen_e_acsl_eq_5; + __gen_e_acsl_u_16 = r; + __gmpz_init_set_si(__gen_e_acsl__12,(long)__gen_e_acsl_u_16.x); + __gmpz_init_set_si(__gen_e_acsl__13,(long)__gen_e_acsl_u_16.y); + __gmpz_init(__gen_e_acsl_add_5); + __gmpz_add(__gen_e_acsl_add_5, + (__e_acsl_mpz_struct const *)(__gen_e_acsl__12), + (__e_acsl_mpz_struct const *)(__gen_e_acsl__13)); + __gmpz_init_set_si(__gen_e_acsl__14,3L); + __gen_e_acsl_eq_5 = __gmpz_cmp((__e_acsl_mpz_struct const *)(__gen_e_acsl_add_5), + (__e_acsl_mpz_struct const *)(__gen_e_acsl__14)); + __e_acsl_assert(__gen_e_acsl_eq_5 == 0,(char *)"Assertion", + (char *)"main",(char *)"\\let u = r; u.x + u.y == 3",35); __gmpz_clear(__gen_e_acsl__12); + __gmpz_clear(__gen_e_acsl__13); + __gmpz_clear(__gen_e_acsl_add_5); + __gmpz_clear(__gen_e_acsl__14); } - __e_acsl_initialize((void *)(& s.x),sizeof(int)); s.x = 5; /*@ assert (\let u = s; u.x) > 0; */ { - union __anonunion_s_2 __gen_e_acsl_u_14; - __gen_e_acsl_u_14 = s; - __e_acsl_assert(__gen_e_acsl_u_14.x > 0,(char *)"Assertion", - (char *)"main",(char *)"(\\let u = s; u.x) > 0",36); + union __anonunion_s_2 __gen_e_acsl_u_17; + __gen_e_acsl_u_17 = s; + __e_acsl_assert(__gen_e_acsl_u_17.x > 0,(char *)"Assertion", + (char *)"main",(char *)"(\\let u = s; u.x) > 0",39); } __retres = 0; - __e_acsl_delete_block((void *)(& s)); __e_acsl_delete_block((void *)(& r)); __e_acsl_delete_block((void *)(& f)); - __e_acsl_delete_block((void *)(& m)); __e_acsl_memory_clean(); return __retres; } diff --git a/src/plugins/e-acsl/tests/gmp/oracle/let.0.res.oracle b/src/plugins/e-acsl/tests/gmp/oracle/let.0.res.oracle index 3900d2e7c64..47658609fcf 100644 --- a/src/plugins/e-acsl/tests/gmp/oracle/let.0.res.oracle +++ b/src/plugins/e-acsl/tests/gmp/oracle/let.0.res.oracle @@ -1,7 +1,5 @@ [e-acsl] beginning translation. -tests/gmp/let.c:29:[e-acsl] warning: E-ACSL construct `let-binding on array or pointer' is not yet supported. - Ignoring annotation. -tests/gmp/let.c:27:[e-acsl] warning: E-ACSL construct `let-binding on array or pointer' is not yet supported. +tests/gmp/let.c:30:[e-acsl] warning: E-ACSL construct `let-binding on array or pointer' is not yet supported. Ignoring annotation. [e-acsl] translation done in project "e-acsl". [value] Analyzing a complete application starting at main @@ -18,31 +16,31 @@ tests/gmp/let.c:27:[e-acsl] warning: E-ACSL construct `let-binding on array or p __e_acsl_math_HUGE_VALF ∈ [-3.40282346639e+38 .. 3.40282346639e+38] __e_acsl_math_INFINITY ∈ [-1.79769313486e+308 .. 1.79769313486e+308] [value] using specification for function __e_acsl_memory_init -[value] using specification for function __e_acsl_store_block tests/gmp/let.c:7:[value:alarm] warning: assertion got status unknown. [value] using specification for function __e_acsl_assert tests/gmp/let.c:9:[value:alarm] warning: assertion got status unknown. tests/gmp/let.c:12:[value] cannot evaluate ACSL term, unsupported ACSL construct: \let bindings tests/gmp/let.c:12:[value:alarm] warning: assertion got status unknown. tests/gmp/let.c:14:[value:alarm] warning: assertion got status unknown. -[value] using specification for function __e_acsl_full_init -tests/gmp/let.c:18:[value] cannot evaluate ACSL term, unsupported ACSL construct: \let bindings -tests/gmp/let.c:18:[value:alarm] warning: assertion got status unknown. +tests/gmp/let.c:17:[value:alarm] warning: assertion got status unknown. +tests/gmp/let.c:21:[value] cannot evaluate ACSL term, unsupported ACSL construct: \let bindings +tests/gmp/let.c:21:[value:alarm] warning: assertion got status unknown. [value] using specification for function __gmpz_init_set_si [value] using specification for function __gmpz_init [value] using specification for function __gmpz_mul [value] using specification for function __gmpz_cmp -tests/gmp/let.c:18:[value:alarm] warning: function __e_acsl_assert: precondition got status unknown. +tests/gmp/let.c:21:[value:alarm] warning: function __e_acsl_assert: precondition got status unknown. [value] using specification for function __gmpz_clear -tests/gmp/let.c:21:[value:alarm] warning: assertion got status unknown. tests/gmp/let.c:24:[value:alarm] warning: assertion got status unknown. +[value] using specification for function __e_acsl_store_block +[value] using specification for function __e_acsl_full_init tests/gmp/let.c:27:[value:alarm] warning: assertion got status unknown. -tests/gmp/let.c:29:[value] cannot evaluate ACSL term, unsupported ACSL construct: \let bindings -tests/gmp/let.c:29:[value:alarm] warning: assertion got status unknown. +tests/gmp/let.c:30:[value:alarm] warning: assertion got status unknown. +tests/gmp/let.c:32:[value] cannot evaluate ACSL term, unsupported ACSL construct: \let bindings tests/gmp/let.c:32:[value:alarm] warning: assertion got status unknown. -[value] using specification for function __e_acsl_initialize -tests/gmp/let.c:36:[value] cannot evaluate ACSL term, unsupported ACSL construct: \let bindings -tests/gmp/let.c:36:[value:alarm] warning: assertion got status unknown. +tests/gmp/let.c:35:[value:alarm] warning: assertion got status unknown. +tests/gmp/let.c:39:[value] cannot evaluate ACSL term, unsupported ACSL construct: \let bindings +tests/gmp/let.c:39:[value:alarm] warning: assertion got status unknown. [value] using specification for function __e_acsl_delete_block [value] using specification for function __e_acsl_memory_clean [value] done for function main diff --git a/src/plugins/e-acsl/tests/gmp/oracle/let.1.res.oracle b/src/plugins/e-acsl/tests/gmp/oracle/let.1.res.oracle index 8d0c74303e4..e32fc4b2987 100644 --- a/src/plugins/e-acsl/tests/gmp/oracle/let.1.res.oracle +++ b/src/plugins/e-acsl/tests/gmp/oracle/let.1.res.oracle @@ -1,7 +1,5 @@ [e-acsl] beginning translation. -tests/gmp/let.c:29:[e-acsl] warning: E-ACSL construct `let-binding on array or pointer' is not yet supported. - Ignoring annotation. -tests/gmp/let.c:27:[e-acsl] warning: E-ACSL construct `let-binding on array or pointer' is not yet supported. +tests/gmp/let.c:30:[e-acsl] warning: E-ACSL construct `let-binding on array or pointer' is not yet supported. Ignoring annotation. [e-acsl] translation done in project "e-acsl". [value] Analyzing a complete application starting at main @@ -18,7 +16,6 @@ tests/gmp/let.c:27:[e-acsl] warning: E-ACSL construct `let-binding on array or p __e_acsl_math_HUGE_VALF ∈ [-3.40282346639e+38 .. 3.40282346639e+38] __e_acsl_math_INFINITY ∈ [-1.79769313486e+308 .. 1.79769313486e+308] [value] using specification for function __e_acsl_memory_init -[value] using specification for function __e_acsl_store_block tests/gmp/let.c:7:[value:alarm] warning: assertion got status unknown. [value] using specification for function __gmpz_init_set_si [value] using specification for function __gmpz_init @@ -36,22 +33,24 @@ tests/gmp/let.c:12:[value:alarm] warning: assertion got status unknown. tests/gmp/let.c:12:[value:alarm] warning: function __e_acsl_assert: precondition got status unknown. tests/gmp/let.c:14:[value:alarm] warning: assertion got status unknown. tests/gmp/let.c:14:[value:alarm] warning: function __e_acsl_assert: precondition got status unknown. -[value] using specification for function __e_acsl_full_init -tests/gmp/let.c:18:[value] cannot evaluate ACSL term, unsupported ACSL construct: \let bindings -tests/gmp/let.c:18:[value:alarm] warning: assertion got status unknown. -tests/gmp/let.c:18:[value:alarm] warning: function __e_acsl_assert: precondition got status unknown. +tests/gmp/let.c:17:[value:alarm] warning: assertion got status unknown. +tests/gmp/let.c:17:[value:alarm] warning: function __e_acsl_assert: precondition got status unknown. +tests/gmp/let.c:21:[value] cannot evaluate ACSL term, unsupported ACSL construct: \let bindings tests/gmp/let.c:21:[value:alarm] warning: assertion got status unknown. tests/gmp/let.c:21:[value:alarm] warning: function __e_acsl_assert: precondition got status unknown. tests/gmp/let.c:24:[value:alarm] warning: assertion got status unknown. +tests/gmp/let.c:24:[value:alarm] warning: function __e_acsl_assert: precondition got status unknown. +[value] using specification for function __e_acsl_store_block +[value] using specification for function __e_acsl_full_init tests/gmp/let.c:27:[value:alarm] warning: assertion got status unknown. -tests/gmp/let.c:27:[value:alarm] warning: function __e_acsl_assert: precondition got status unknown. -tests/gmp/let.c:29:[value] cannot evaluate ACSL term, unsupported ACSL construct: \let bindings -tests/gmp/let.c:29:[value:alarm] warning: assertion got status unknown. +tests/gmp/let.c:30:[value:alarm] warning: assertion got status unknown. +tests/gmp/let.c:30:[value:alarm] warning: function __e_acsl_assert: precondition got status unknown. +tests/gmp/let.c:32:[value] cannot evaluate ACSL term, unsupported ACSL construct: \let bindings tests/gmp/let.c:32:[value:alarm] warning: assertion got status unknown. -tests/gmp/let.c:32:[value:alarm] warning: function __e_acsl_assert: precondition got status unknown. -[value] using specification for function __e_acsl_initialize -tests/gmp/let.c:36:[value] cannot evaluate ACSL term, unsupported ACSL construct: \let bindings -tests/gmp/let.c:36:[value:alarm] warning: assertion got status unknown. +tests/gmp/let.c:35:[value:alarm] warning: assertion got status unknown. +tests/gmp/let.c:35:[value:alarm] warning: function __e_acsl_assert: precondition got status unknown. +tests/gmp/let.c:39:[value] cannot evaluate ACSL term, unsupported ACSL construct: \let bindings +tests/gmp/let.c:39:[value:alarm] warning: assertion got status unknown. [value] using specification for function __e_acsl_delete_block [value] using specification for function __e_acsl_memory_clean [value] done for function main -- GitLab