Skip to content

Commit b002121

Browse files
authored
Merge pull request #6438 from NlightNFotis/flip_cbmc_primitives_tests_core
Flip passing FUTURE tests to CORE in `regression/cbmc-primitives`
2 parents 011a1c3 + a987c67 commit b002121

File tree

4 files changed

+14
-10
lines changed

4 files changed

+14
-10
lines changed

regression/cbmc-primitives/dynamic-object-02/test-no-cp.desc

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FUTURE
1+
CORE
22
main.c
33
--no-simplify --no-propagation
44
^EXIT=10$
@@ -10,5 +10,6 @@ main.c
1010
--
1111
Check that the dynamic object property is nondet for uninitialized pointers. We
1212
use --no-simplify and --no-propagation to ensure that the case is not solved by
13-
the constant propagation and thus tests the constraint encoding. Recorded as
14-
ADA-526.
13+
the constant propagation and thus tests the constraint encoding. We expect
14+
that `__CPROVER_DYNAMIC_OBJECT` should be nondet for pointers that are neither
15+
null nor valid.

regression/cbmc-primitives/dynamic-object-02/test.desc

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FUTURE
1+
CORE
22
main.c
33

44
^EXIT=10$
@@ -9,4 +9,3 @@ main.c
99
^warning: ignoring
1010
--
1111
Check that the dynamic object property is nondet for uninitialized pointers.
12-
Recorded as ADA-526.

regression/cbmc-primitives/pointer-offset-01/test-no-cp.desc

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FUTURE
1+
CORE
22
main.c
33
--no-simplify --no-propagation
44
^EXIT=10$
@@ -11,4 +11,3 @@ main.c
1111
Check that both positive and negative offsets can be chosen for uninitialized
1212
pointers. We use --no-simplify and --no-propagation to ensure that the case is
1313
not solved by the constant propagation and thus tests the constraint encoding.
14-
Recorded as ADA-528.
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FUTURE
1+
CORE
22
main.c
33

44
^EXIT=10$
@@ -8,5 +8,10 @@ main.c
88
--
99
^warning: ignoring
1010
--
11-
Check that both positive and negative offsets can be chosen for uninitialized
12-
pointers. Recorded as ADA-528.
11+
For uninitialised pointers, CBMC chooses a nondeterministic value (though no memory
12+
is allocated). Since the offset of pointers is signed, negative offsets should be
13+
able to be chosen (along with positive ones) non-deterministically.
14+
`__CPROVER_POINTER_OFFSET` is the CBMC primitive that gets the pointer offset
15+
from the base address of the object. This test guards this, and especially
16+
against the case where we could only observe some cases where offsets were only
17+
positive (in some CI configurations, for instance).

0 commit comments

Comments
 (0)