Reference

goto-diff(1)

Syntactic diff of goto binaries

NAME

goto-diff - Syntactic diff of goto binaries

SYNOPSIS

goto-diff [-?] [-h] [--help]

show help

goto-diff old new

goto binaries to be compared

DESCRIPTION

OPTIONS

Diff options:

--show-goto-functions

show loaded goto program

--list-goto-functions

list loaded goto functions

--show-properties

show the properties, but don't run analysis

--show-loops

show the loops in the programs

-u | --unified

output unified diff

--change-impact |

--forward-impact |

--backward-impact

output unified diff with forward&backward/forward/backward dependencies

--compact-output

output dependencies in compact mode

Program instrumentation options:

--bounds-check

enable array bounds checks

--pointer-check

enable pointer checks

--memory-leak-check

enable memory leak checks

--memory-cleanup-check

Enable memory cleanup checks: assert that all dynamically allocated memory is explicitly freed before terminating the program.

--div-by-zero-check

enable division by zero checks for integer division

--float-div-by-zero-check

enable division by zero checks for floating-point division

--signed-overflow-check

enable signed arithmetic over- and underflow checks

--unsigned-overflow-check

enable arithmetic over- and underflow checks

--pointer-overflow-check

enable pointer arithmetic over- and underflow checks

--conversion-check

check whether values can be represented after type cast

--undefined-shift-check

check shift greater than bit-width

--float-overflow-check

check floating-point for +/-Inf

--nan-check

check floating-point for NaN

--enum-range-check

checks that all enum type expressions have values in the enum range

--pointer-primitive-check

checks that all pointers in pointer primitives are valid or null

--retain-trivial-checks

include checks that are trivially true

--error-label label

check that label is unreachable

--no-built-in-assertions

ignore assertions in built-in library

--no-assertions

ignore user assertions

--no-assumptions

ignore user assumptions

--assert-to-assume

convert user assertions to assumptions

--cover CC

create test-suite with coverage criterion CC, where CC is one of assertion[s], assume[s], branch[es], condition[s], cover, decision[s], location[s], or mcdc

--cover-failed-assertions

do not stop coverage checking at failed assertions (this is the default for --cover assertions)

--show-test-suite

print test suite for coverage criterion (requires --cover)

Other options:

--version

show version and exit

--json-ui

use JSON-formatted output

--flush

flush every line of output

--verbosity n

verbosity level

--timestamp [monotonic|wall]

Print microsecond-precision timestamps. monotonic: stamps increase monotonically. wall: ISO-8601 wall clock timestamps.

ENVIRONMENT

All tools honor the TMPDIR environment variable when generating temporary files and directories.

BUGS

If you encounter a problem please create an issue at https://github.com/diffblue/cbmc/issues

SEE ALSO

cbmc(1), goto-analyzer(1)

COPYRIGHT

2016, Daniel Kroening, Peter Schrammel

History

--assert-to-assume since Debian 13 (Trixie); --backward-impact since Debian 13 (Trixie); --compact-output since Debian 13 (Trixie); --conversion-check since Debian 13 (Trixie); --cover since Debian 13 (Trixie); --cover-failed-assertions since Debian 13 (Trixie); --enum-range-check since Debian 13 (Trixie); --float-div-by-zero-check since Debian 13 (Trixie); --float-overflow-check since Debian 13 (Trixie); --flush since Debian 13 (Trixie); --json-ui since Debian 13 (Trixie); --list-goto-functions since Debian 13 (Trixie); --memory-cleanup-check since Debian 13 (Trixie); --memory-leak-check since Debian 13 (Trixie); --no-built-in-assertions since Debian 13 (Trixie); --pointer-overflow-check since Debian 13 (Trixie); --pointer-primitive-check since Debian 13 (Trixie); --retain-trivial-checks since Debian 13 (Trixie); --show-test-suite since Debian 13 (Trixie); --timestamp since Debian 13 (Trixie); --undefined-shift-check since Debian 13 (Trixie); --unified since Debian 13 (Trixie); --verbosity since Debian 13 (Trixie); --version since Debian 13 (Trixie); -u since Debian 13 (Trixie).

--16 until Debian 11 (Bullseye); --32 until Debian 11 (Bullseye); --64 until Debian 11 (Bullseye); --ILP32 until Debian 11 (Bullseye); --ILP64 until Debian 11 (Bullseye); --LLP64 until Debian 11 (Bullseye); --LP32 until Debian 11 (Bullseye); --LP64 until Debian 11 (Bullseye); --all-properties until Debian 11 (Bullseye); --arch until Debian 11 (Bullseye); --arrays-uf-always until Debian 11 (Bullseye); --arrays-uf-never until Debian 11 (Bullseye); --beautify-greedy until Debian 11 (Bullseye); --big-endian until Debian 11 (Bullseye); --boolector until Debian 11 (Bullseye); --cover-assertions until Debian 11 (Bullseye); --cvc until Debian 10 (Buster); --cvc3 until Debian 11 (Bullseye); --cvc4 until Debian 11 (Bullseye); --depth until Debian 11 (Bullseye); --dimacs until Debian 11 (Bullseye); --dump-c until Debian 11 (Bullseye); --function until Debian 11 (Bullseye); --isr until Debian 11 (Bullseye); --little-endian until Debian 11 (Bullseye); --mathsat until Debian 11 (Bullseye); --mmio until Debian 11 (Bullseye); --no-arch until Debian 11 (Bullseye); --no-library until Debian 11 (Bullseye); --no-pretty-names until Debian 11 (Bullseye); --no-unwinding-assertions until Debian 11 (Bullseye); --nondet-static until Debian 11 (Bullseye); --nondet-volatile until Debian 11 (Bullseye); --os until Debian 11 (Bullseye); --outfile until Debian 11 (Bullseye); --preprocess until Debian 11 (Bullseye); --program-only until Debian 11 (Bullseye); --property until Debian 11 (Bullseye); --refine until Debian 11 (Bullseye); --round-to-minus-inf until Debian 11 (Bullseye); --round-to-nearest until Debian 11 (Bullseye); --round-to-plus-inf until Debian 11 (Bullseye); --round-to-zero until Debian 11 (Bullseye); --show-symbol-table until Debian 11 (Bullseye); --show-vcc until Debian 11 (Bullseye); --slice-formula until Debian 11 (Bullseye); --smt2 until Debian 11 (Bullseye); --unsigned-char until Debian 11 (Bullseye); --unwind until Debian 11 (Bullseye); --unwindset until Debian 11 (Bullseye); --yices until Debian 11 (Bullseye); --z3 until Debian 11 (Bullseye); -D until Debian 11 (Bullseye); -I until Debian 11 (Bullseye).