Skip to content

Commit 780b687

Browse files
authored
Merge pull request #8316 from diffblue/pointer-dereference-is-now-fatal
pointer checks are now fatal
2 parents ed51462 + 2c19fb9 commit 780b687

File tree

34 files changed

+95
-79
lines changed

34 files changed

+95
-79
lines changed

regression/cbmc-incr-smt2/pointer_arithmetic/pointer_subtraction.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
CORE
22
pointer_subtraction.c
3-
--no-signed-overflow-check --trace
3+
--no-signed-overflow-check --trace --no-pointer-check
44
\[main\.assertion\.1\] line \d+ expected failure after pointer manipulation: FAILURE
55
\[main\.assertion\.2\] line \d+ expected successful after pointer manipulation: SUCCESS
66
\[main\.assertion\.3\] line \d+ expected failure after pointer manipulation: FAILURE

regression/cbmc-incr-smt2/pointers-relational-operators/pointers_assume.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
CORE
22
pointers_assume.c
3-
--trace
3+
--trace --no-pointer-check
44
\[main\.assertion\.1\] line \d+ x == y: expected failure: FAILURE
55
\[main\.assertion\.2\] line \d+ z >= x: expected successful: SUCCESS
66
\[main\.assertion\.3\] line \d+ z <= y: expected successful: SUCCESS

regression/cbmc-primitives/exists_memory_checks/invalid_index_range.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ invalid_index_range.c
44
^EXIT=10$
55
^SIGNAL=0$
66
^VERIFICATION FAILED$
7-
\[main\.assertion\.1\] line 9 assertion __CPROVER_exists \{ int i; \(0 <= i && i < 20\) && a\[i\] == i \*i \}: SUCCESS
7+
^\[main\.assertion\.1\] line 9 assertion __CPROVER_exists \{ int i; \(0 <= i && i < 20\) && a\[i\] == i \*i \}: UNKNOWN$
88
line 9 dereference failure: pointer outside object bounds in a\[(\(signed (long|long long) int\))?i\]: FAILURE
99
--
1010
--

regression/cbmc-primitives/exists_memory_checks/smt_missing_range_check.desc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ smt_missing_range_check.c
44
^EXIT=10$
55
^SIGNAL=0$
66
^VERIFICATION FAILED$
7-
\[main\.assertion\.1\] line \d assertion __CPROVER_exists \{ int i; a\[i\] == i \*i \}: SUCCESS
8-
\[main\.pointer_dereference\.11\] line \d dereference failure: pointer outside object bounds in a\[(\(signed (long|long long) int\))?i\]: FAILURE
7+
^\[main\.assertion\.1\] line \d assertion __CPROVER_exists \{ int i; a\[i\] == i \*i \}: UNKNOWN$
8+
^\[main\.pointer_dereference\.11\] line \d dereference failure: pointer outside object bounds in a\[(\(signed (long|long long) int\))?i\]: FAILURE$
99
--
1010
--
1111
Check that memory checks fail for pointer dereferences inside an existential

regression/cbmc-primitives/forall_6231_3/test_malloc_less_than_bound.desc

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@ test_malloc_less_than_bound.c
33
--no-malloc-may-fail --pointer-check
44
^EXIT=10$
55
^SIGNAL=0$
6-
\[main\.assertion\.2\] line \d+ assertion __CPROVER_forall \{ int i ; \(0 <= i && i < 10\) ==> \*\(a\+i\) == \*\(a\+i\) \}: SUCCESS
7-
\[main\.pointer_dereference\.7\] line \d+ dereference failure: pointer NULL in a\[(\(signed (long|long long) int\))?i\]: SUCCESS
8-
\[main\.pointer_dereference\.8\] line \d+ dereference failure: pointer invalid in a\[(\(signed (long|long long) int\))?i\]: SUCCESS
9-
\[main\.pointer_dereference\.9\] line \d+ dereference failure: deallocated dynamic object in a\[(\(signed (long|long long) int\))?i\]: SUCCESS
10-
\[main\.pointer_dereference\.10\] line \d+ dereference failure: dead object in a\[(\(signed (long|long long) int\))?i\]: SUCCESS
11-
\[main\.pointer_dereference\.11\] line \d+ dereference failure: pointer outside object bounds in a\[(\(signed (long|long long) int\))?i\]: FAILURE
12-
\[main\.pointer_dereference\.12\] line \d+ dereference failure: invalid integer address in a\[(\(signed (long|long long) int\))?i\]: SUCCESS
6+
^\[main\.assertion\.2\] line \d+ assertion __CPROVER_forall \{ int i ; \(0 <= i && i < 10\) ==> \*\(a\+i\) == \*\(a\+i\) \}: UNKNOWN$
7+
^\[main\.pointer_dereference\.7\] line \d+ dereference failure: pointer NULL in a\[(\(signed (long|long long) int\))?i\]: SUCCESS$
8+
^\[main\.pointer_dereference\.8\] line \d+ dereference failure: pointer invalid in a\[(\(signed (long|long long) int\))?i\]: SUCCESS$
9+
^\[main\.pointer_dereference\.9\] line \d+ dereference failure: deallocated dynamic object in a\[(\(signed (long|long long) int\))?i\]: SUCCESS$
10+
^\[main\.pointer_dereference\.10\] line \d+ dereference failure: dead object in a\[(\(signed (long|long long) int\))?i\]: SUCCESS$
11+
^\[main\.pointer_dereference\.11\] line \d+ dereference failure: pointer outside object bounds in a\[(\(signed (long|long long) int\))?i\]: FAILURE$
12+
^\[main\.pointer_dereference\.12\] line \d+ dereference failure: invalid integer address in a\[(\(signed (long|long long) int\))?i\]: UNKNOWN$
1313
^VERIFICATION FAILED$
1414
--
1515
--

regression/cbmc/Function_Pointer18/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
CORE
22
main.c
3-
3+
--no-pointer-check
44
^EXIT=10$
55
^SIGNAL=0$
66
\[f2.assertion.1\] line [0-9]+ assertion 0: SUCCESS

regression/cbmc/Function_Pointer_Init_One_Candidate/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
CORE
22
main.c
3-
--function foo
3+
--function foo --no-pointer-check
44
^\[foo.assertion.\d+\] line \d+ assertion other_function\(4\) == 5: FAILURE$
55
^\[foo.assertion.\d+\] line \d+ assertion other_function\(4\) == 4: SUCCESS$
66
^EXIT=10$

regression/cbmc/Function_Pointer_Init_Two_Candidates/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
CORE
22
main.c
3-
--function foo
3+
--function foo --no-pointer-check
44
^\[foo.assertion.\d+\] line \d+ assertion other_function\(4\) == 5: FAILURE$
55
^\[foo.assertion.\d+\] line \d+ assertion other_function\(4\) >= 4: SUCCESS$
66
^EXIT=10$

regression/cbmc/array-cell-sensitivity10/test_execution.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
CORE
22
test.c
3-
3+
--no-pointer-check
44
^VERIFICATION FAILED$
55
^\[main.assertion\.1\] line 16.*SUCCESS$
66
^\[main.assertion\.2\] line 17.*FAILURE$

regression/cbmc/array-cell-sensitivity3/test_execution.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
CORE
22
test.c
3-
3+
--no-pointer-check
44
^VERIFICATION FAILED$
55
^\[main.assertion\.1\] line 9.*SUCCESS$
66
^\[main.assertion\.2\] line 10.*FAILURE$

0 commit comments

Comments
 (0)