Skip to content

Commit c1246c7

Browse files
committed
Run cbmc --full-slice in regression tests
To ensure --full-slice keeps working on all of CBMC's regression tests, run them in CI via an additional test profile. Some tests have to be excluded for they rely on program statements not being removed. Fixes: diffblue#260
1 parent 5ce50f5 commit c1246c7

File tree

49 files changed

+57
-94
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+57
-94
lines changed

regression/cbmc/Bool5/full-slice.desc

Lines changed: 0 additions & 9 deletions
This file was deleted.

regression/cbmc/CMakeLists.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,13 @@ add_test_pl_profile(
3232
"CORE"
3333
)
3434

35+
add_test_pl_profile(
36+
"cbmc-full-slice"
37+
"$<TARGET_FILE:cbmc> --validate-goto-model --validate-ssa-equation --full-slice"
38+
"-C;-X;smt-backend;-X;broken-full-slice;-X;full-slice-expected-failure;${gcc_only_string}-s;full-slice"
39+
"CORE"
40+
)
41+
3542
# solver appears on the PATH in Windows already
3643
if(NOT "${CMAKE_SYSTEM_NAME}" STREQUAL "Windows")
3744
set_property(

regression/cbmc/Float24/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.i
33
--win32 --xml-ui
44
^EXIT=10$

regression/cbmc/Makefile

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,12 @@ test-new-smt-backend:
3434
-I new-smt-backend \
3535
-s new-smt-backend $(GCC_ONLY)
3636

37+
test-full-slice:
38+
@../test.pl -e -p -c "../../../src/cbmc/cbmc --validate-goto-model --validate-ssa-equation --full-slice" \
39+
-X smt-backend $(GCC_ONLY) \
40+
-X broken-full-slice -X full-slice-expected-failure
41+
-s full-slice
42+
3743
tests.log: ../test.pl test
3844

3945
clean:

regression/cbmc/Pointer18/full-slice.desc

Lines changed: 0 additions & 8 deletions
This file was deleted.

regression/cbmc/array-cell-sensitivity1/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
test.c
33
--show-vcc
44
main::1::array!0@1#2\[\[1\]\] = main::1::array!0@1#1\[1\]

regression/cbmc/array-cell-sensitivity15/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE paths-lifo-expected-failure
1+
CORE paths-lifo-expected-failure full-slice-expected-failure
22
access.c
33
--program-only
44
^EXIT=0$

regression/cbmc/array-cell-sensitivity2/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
test.c
33
--show-vcc
44
main::1::array!0@1#2 = with\(main::1::array!0@1#1, cast\(main::argc!0@1#1 \+ -1, signedbv\[64\]\), 1\)

regression/cbmc/array-cell-sensitivity9/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
test.c
33
--show-vcc
44
main::1::array!0@1#2\[\[0\]\]..x = main::1::array!0@1#1\[0\].x

regression/cbmc/array_of_bool_as_bitvec/test-smt2-outfile.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE broken-smt-backend
1+
CORE broken-smt-backend full-slice-expected-failure
22
main.c
33
--smt2 --outfile -
44
\(= \(select array_of\.2 i\) \(ite false #b1 #b0\)\)

regression/cbmc/byte-op-metric/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--show-byte-ops
44
^EXIT=0$

regression/cbmc/byte-op-metric/test_json.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--show-byte-ops --json-ui
44
activate-multi-line-match

regression/cbmc/byte_update5/full-slice.desc

Lines changed: 0 additions & 8 deletions
This file was deleted.

regression/cbmc/compact-trace/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--compact-trace
44
activate-multi-line-match

regression/cbmc/coverage_report1/paths.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--symex-coverage-report - --paths lifo
44
<line branch="false" hits="1" number="12"/>

regression/cbmc/coverage_report1/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--symex-coverage-report -
44
<line branch="false" hits="1" number="12"/>

regression/cbmc/destructors/compound_literal.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--unwind 10 --show-goto-functions
44
activate-multi-line-match

regression/cbmc/destructors/enter_lexical_block.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--unwind 10 --show-goto-functions
44
activate-multi-line-match

regression/cbmc/enum-trace1/test_json.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--json-ui --function test --trace
44
activate-multi-line-match

regression/cbmc/enum-trace1/test_xml.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--xml-ui --function test --trace
44
activate-multi-line-match

regression/cbmc/field-sensitivity1/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
test.c
33
--show-vcc
44
main::1::a!0@1#2\.\.x = main::argc!0@1#1

regression/cbmc/field-sensitivity10/test.desc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
CORE
22
test.c
33
--show-vcc
4-
main::1::a1!0@1#2\.\.y =
5-
main::1::a2!0@1#2\.\.z =
4+
main::1::a1!0@1#[12]\.\.y =
5+
main::1::a2!0@1#[12]\.\.z =
66
^EXIT=0$
77
^SIGNAL=0$
88
--

regression/cbmc/field-sensitivity2/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
test.c
33
--show-vcc
44
main::1::a1!0@1#2\.\.x =

regression/cbmc/field-sensitivity3/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
test.c
33
--show-vcc
44
main::1::a1!0@1#2\.\.x =

regression/cbmc/field-sensitivity8/test.desc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
CORE
22
test.c
33
--show-vcc
4-
main::1::a1!0@1#2\.\.y =
5-
main::1::a2!0@1#2\.\.z =
4+
main::1::a1!0@1#[12]\.\.y =
5+
main::1::a2!0@1#[12]\.\.z =
66
^EXIT=0$
77
^SIGNAL=0$
88
--

regression/cbmc/function-return-no-body1/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--xml-ui
44
activate-multi-line-match

regression/cbmc/graphml_witness1/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--graphml-witness -
44
^EXIT=10$

regression/cbmc/hex_trace/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--trace-hex --trace
44
^EXIT=10$

regression/cbmc/integer-assignments1/integer-typecheck.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--show-goto-functions
44
^[[:space:]]*ASSIGN main::1::b := main::1::b \* cast\(100, ℤ\)$

regression/cbmc/integer-assignments1/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE smt-backend broken-smt-backend
1+
CORE smt-backend broken-smt-backend full-slice-expected-failure
22
main.c
33
--trace --smt2
44
^EXIT=10$

regression/cbmc/integral-trace/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
test.c
33
--trace --xml-ui
44
activate-multi-line-match

regression/cbmc/multiple-goto-traces/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--trace
44
activate-multi-line-match

regression/cbmc/overflow/leftshift_overflow-c99-full-slice.desc

Lines changed: 0 additions & 17 deletions
This file was deleted.

regression/cbmc/printf1/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE broken-smt-backend
1+
CORE broken-smt-backend full-slice-expected-failure
22
main.c
33
--trace
44
^EXIT=10$

regression/cbmc/reachability-slice-interproc/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
test.c
33
--reachability-slice-fb --show-goto-functions
44
^EXIT=0$

regression/cbmc/reachability-slice-interproc3/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--reachability-slice-fb --show-goto-functions
44
^EXIT=0$

regression/cbmc/reachability-slice/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
test.c
33
--reachability-slice --show-goto-functions --cover location --property foo.coverage.2
44
^EXIT=0$

regression/cbmc/reachability-slice/test2.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
test.c
33
--reachability-slice-fb --show-goto-functions --cover location --property foo.coverage.2
44
^EXIT=0$

regression/cbmc/reachability-slice/test3.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
test.c
33
--reachability-slice --show-goto-functions --cover location
44
^EXIT=0$

regression/cbmc/return3/full-slice.desc

Lines changed: 0 additions & 8 deletions
This file was deleted.

regression/cbmc/show-vcc/main_prec.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main_prec.c
33
--show-vcc
44
^EXIT=0$

regression/cbmc/show-vcc/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--show-vcc
44
^EXIT=0$

regression/cbmc/symex_should_evaluate_simple_pointer_conditions/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE paths-lifo-expected-failure
1+
CORE paths-lifo-expected-failure full-slice-expected-failure
22
test.c
33
--function test --show-vcc
44
^EXIT=0$

regression/cbmc/symex_should_exclude_null_pointers/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--show-vcc
44
^EXIT=0$

regression/cbmc/symex_should_filter_value_sets/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE paths-lifo-expected-failure
1+
CORE paths-lifo-expected-failure full-slice-expected-failure
22
main.c
33
--show-vcc
44
^EXIT=0$

regression/cbmc/trace-strings/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--trace
44
^EXIT=10$

regression/cbmc/trace-values/trace-values.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE broken-smt-backend
1+
CORE broken-smt-backend full-slice-expected-failure
22
trace-values.c
33
--trace
44
^EXIT=10$

regression/cbmc/trace_address_arithmetic1/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--trace
44
^EXIT=10$

regression/cbmc/trace_show_code/test.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CORE
1+
CORE full-slice-expected-failure
22
main.c
33
--trace --trace-show-code
44
^EXIT=10$

0 commit comments

Comments
 (0)