Description
CBMC version: cbmc-5.12-d8598f8
Operating system: 64-bit x86_64 macos
Exact command line resulting in the issue: /cbmc --unwind 2 008.493977f.43_1a.cil_safe.i
What behaviour did you expect: generated VCC = 1
What happened instead: generated VCC =0
In the above benchmark, I added assert(0)
in the following function:
__inline static void ( __attribute__((__always_inline__)) ldv_error)(void) { { LDV_ERROR: assert(0); goto LDV_ERROR; } }
I am wondering why any VCC has not been generated?
Here is the logs:
➜ ./cbmc --unwind 2 008.493977f.43_1a.cil_safe.i
CBMC version 5.12 (cbmc-5.12-d8598f8) 64-bit x86_64 macos
Parsing 008.493977f.43_1a.cil_safe.i
Converting
Type-checking 008.493977f.43_1a.cil_safe
file /home/ldvuser/ldv/inst/kernel-rules/verifier/rcv.h line 15 function ldv_error: function `assert' is not declared
Generating GOTO Program
Adding CPROVER library (x86_64)
Removal of function pointers and virtual functions
file /work/ldvuser/novikov/work/current--X--drivers/media/video/videobuf-vmalloc.ko--X--defaultlinux--X--43_1a--X--cpachecker/linux/csd_deg_dscv/10/dscv_tempdir/dscv/ri/43_1a/drivers/media/video/videobuf-vmalloc.c.prepared line 96 function videobuf_vm_close: replacing function pointer by 2 possible targets
Generic Property Instrumentation
Running with 8 object bits, 56 offset bits (default)
Starting Bounded Model Checking
**** WARNING: no body for function ldv_initialize
Unwinding loop main.0 iteration 1 file /work/ldvuser/novikov/work/current--X--drivers/media/video/videobuf-vmalloc.ko--X--defaultlinux--X--43_1a--X--cpachecker/linux/csd_deg_dscv/10/dscv_tempdir/dscv/ri/43_1a/drivers/media/video/videobuf-vmalloc.c.prepared line 564 function main thread 0
**** WARNING: no body for function ldv_handler_precall
**** WARNING: no body for function printk
**** WARNING: no body for function vmalloc_user
Unwinding loop __videobuf_mmap_free.0 iteration 1 file /work/ldvuser/novikov/work/current--X--drivers/media/video/videobuf-vmalloc.ko--X--defaultlinux--X--43_1a--X--cpachecker/linux/csd_deg_dscv/10/dscv_tempdir/dscv/ri/43_1a/drivers/media/video/videobuf-vmalloc.c.prepared line 200 function __videobuf_mmap_free thread 0
Not unwinding loop __videobuf_mmap_free.0 iteration 2 file /work/ldvuser/novikov/work/current--X--drivers/media/video/videobuf-vmalloc.ko--X--defaultlinux--X--43_1a--X--cpachecker/linux/csd_deg_dscv/10/dscv_tempdir/dscv/ri/43_1a/drivers/media/video/videobuf-vmalloc.c.prepared line 200 function __videobuf_mmap_free thread 0
Unwinding loop __videobuf_mmap_mapper.0 iteration 1 file /work/ldvuser/novikov/work/current--X--drivers/media/video/videobuf-vmalloc.ko--X--defaultlinux--X--43_1a--X--cpachecker/linux/csd_deg_dscv/10/dscv_tempdir/dscv/ri/43_1a/drivers/media/video/videobuf-vmalloc.c.prepared line 223 function __videobuf_mmap_mapper thread 0
Not unwinding loop __videobuf_mmap_mapper.0 iteration 2 file /work/ldvuser/novikov/work/current--X--drivers/media/video/videobuf-vmalloc.ko--X--defaultlinux--X--43_1a--X--cpachecker/linux/csd_deg_dscv/10/dscv_tempdir/dscv/ri/43_1a/drivers/media/video/videobuf-vmalloc.c.prepared line 223 function __videobuf_mmap_mapper thread 0
**** WARNING: no body for function copy_to_user
Not unwinding loop main.0 iteration 2 file /work/ldvuser/novikov/work/current--X--drivers/media/video/videobuf-vmalloc.ko--X--defaultlinux--X--43_1a--X--cpachecker/linux/csd_deg_dscv/10/dscv_tempdir/dscv/ri/43_1a/drivers/media/video/videobuf-vmalloc.c.prepared line 564 function main thread 0
**** WARNING: no body for function ldv_check_final_state
size of program expression: 613 steps
simple slicing removed 0 assignments
Generated 0 VCC(s), 0 remaining after simplification
** Results:
/home/ldvuser/ldv/inst/kernel-rules/verifier/rcv.h function ldv_error
[ldv_error.assertion.1] line 15 assertion 0: SUCCESS
** 0 of 1 failed (1 iterations)
VERIFICATION SUCCESSFUL
➜
./cbmc --unwind 2 008.493977f.43_1a.cil_safe.i --show-properties
CBMC version 5.12 (cbmc-5.12-d8598f8) 64-bit x86_64 macos
Parsing 008.493977f.43_1a.cil_safe.i
Converting
Type-checking 008.493977f.43_1a.cil_safe
file /home/ldvuser/ldv/inst/kernel-rules/verifier/rcv.h line 15 function ldv_error: function `assert' is not declared
Generating GOTO Program
Adding CPROVER library (x86_64)
Removal of function pointers and virtual functions
file /work/ldvuser/novikov/work/current--X--drivers/media/video/videobuf-vmalloc.ko--X--defaultlinux--X--43_1a--X--cpachecker/linux/csd_deg_dscv/10/dscv_tempdir/dscv/ri/43_1a/drivers/media/video/videobuf-vmalloc.c.prepared line 96 function videobuf_vm_close: replacing function pointer by 2 possible targets
Generic Property Instrumentation
Running with 8 object bits, 56 offset bits (default)
Property ldv_error.assertion.1:
file /home/ldvuser/ldv/inst/kernel-rules/verifier/rcv.h line 15 function ldv_error
assertion 0
(__CPROVER_bool)0