From 0dc96aa6686dd75974a5a4a90413b87c85be082b Mon Sep 17 00:00:00 2001 From: Kostyantyn Vorobyov <kostyantyn.vorobyov@cea.fr> Date: Wed, 16 Mar 2016 14:29:48 +0100 Subject: [PATCH] [tests] Improved test case initialized to cover a bug in partial initialization [ see 61afda4f1ba39f2b9ec5dff3c5cb118402457031 ] --- src/plugins/e-acsl/tests/e-acsl-runtime/initialized.c | 7 +++++++ .../e-acsl/tests/e-acsl-runtime/oracle/gen_initialized.c | 3 +++ 2 files changed, 10 insertions(+) diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/initialized.c b/src/plugins/e-acsl/tests/e-acsl-runtime/initialized.c index 88d367ba270..c4c5edec1f4 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/initialized.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/initialized.c @@ -116,4 +116,11 @@ int main(void) { /* @assert ! \initialized(partsc + i); */ } } + + /* Check duplicate initialization does not affect correct count of + * initialized bits (relevant for ADT models only). */ + int dup [2]; + dup[0] = 1; + dup[0] = 1; + /* @assert ! \initialized(&dup); */ } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_initialized.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_initialized.c index bfcf7fe7b53..e0be4e27e9c 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_initialized.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_initialized.c @@ -23,6 +23,7 @@ int main(void) int size; char *partsc; char *partsi; + int dup[2]; __e_acsl_memory_init((int *)0,(char ***)0,8UL); __e_acsl_globals_init(); __store_block((void *)(d),16UL); @@ -333,6 +334,8 @@ int main(void) i_0 ++; } } + dup[0] = 1; + dup[0] = 1; __retres = 0; __delete_block((void *)(& B)); __delete_block((void *)(& A)); -- GitLab