[ 0:00] | load /var/obj/divine-nightly/semidbg/test/_expand/sym/ret-b.pkg.cpp/v.O0.cpp v.O0.cpp [ 0:00] | expect --result error --location v.O0.cpp:30 [ 0:00] | expect --trace FAULT: --trace-count 1 [ 0:00] | cc -o testcase.bc -std=c++14 -O0 v.O0.cpp [ 0:00] | verify --max-memory 4GiB --max-time 600 --threads 2 --report-filename verify.out --solver smtlib:z3 --symbolic testcase.bc [ 0:00] compiling v.O0.cpp [ 0:00] loading bitcode … DiOS … LART … RR … constants … done [ 0:11] booting … done [ 0:11] states per second: 1.60128 [ 0:12] state count: 2 [ 0:12] mips: 0.21 [ 0:12] symbolic: 1 [ 0:13] [ 0:13] error found: yes [ 0:13] error trace: | [ 0:13] ASSUME (not (= (concat #x00000000 #x0000002a) #x0000000000000000)) [ 0:13] ASSUME (not (= (concat #x00000000 #x00000002) #x0000000000000000)) [ 0:13] ASSUME (bvslt (bvsrem var_1 #x0000002a) #x0000002a) [ 0:13] ASSUME (not (= (concat #x00000000 #x0000002a) #x0000000000000000)) [ 0:13] ASSUME (not (= (concat #x00000000 #x00000002) #x0000000000000000)) [ 0:13] ASSUME (not (= (bvadd (bvsrem var_4 #x00000002) #x0000002a) #x0000002a)) [ 0:13] ASSUME (and (not (= (bvadd (bvsrem var_4 #x00000002) #x0000002a) #x0000002a)) (not (= (bvadd (bvsrem var_4 #x00000002) #x0000002a) #x0000002b))) [ 0:13] ASSUME (and (and (not (= (bvadd (bvsrem var_4 #x00000002) #x0000002a) #x0000002a)) (not (= (bvadd (bvsrem var_4 #x00000002) #x0000002a) #x0000002b))) (= (bvadd (bvsrem var_4 #x00000002) #x0000002a) #x00000029)) [ 0:13] ASSUME (and (and (and (not (= (bvadd (bvsrem var_4 #x00000002) #x0000002a) #x0000002a)) (not (= (bvadd (bvsrem var_4 #x00000002) #x0000002a) #x0000002b))) (= (bvadd (bvsrem var_4 #x00000002) #x0000002a) #x00000029)) (not (= (bvadd (bvsrem var_4 #x00000002) #x0000002a) #x0000002a))) [ 0:13] FAULT: v.O0.cpp:30: int main(): assertion 'x == 42' failed [ 0:13] [0] FATAL: assertion failure in userspace [ 0:13] [ 0:13] active stack: [ 0:14] - symbol: void __dios::FaultBase::handler<__dios::Context>(_VM_Fault, _VM_Frame*, void (*)()) [ 0:15] location: /dios/sys/fault.hpp:118 [ 0:15] - symbol: __dios_fault [ 0:15] location: /dios/arch/divm/fault.c:12 [ 0:15] - symbol: lart.__assert_fail [ 0:15] location: /dios/libc/_PDCLIB/assert.c:24 [ 0:15] - symbol: main [ 0:15] location: v.O0.cpp:30 [ 0:15] - symbol: __dios_start [ 0:15] location: /dios/libc/sys/start.cpp:94 [ 0:15] + divine sim --batch --skip-init --load-report verify.out [ 0:15] [ 0:25] ^ —————. —.— . . —.— . . .————— . . [ 0:25] ——— | | | | | | |\ | | | | [ 0:25] —(o)— | | | | | | | \ | |———— '————| [ 0:25] ——————— | | | \ / | | \| | | [ 0:25] ————————— —————' —'— ' —'— ' ' '————— ' [ 0:25] [ 0:25] Welcome to 'divine sim', an interactive debugger. Type 'help' to get started. [ 0:25] traced states: [ 0:25] ▶ state #1 [new] -- active threads: [0:0] -- [ 0:25] T: FAULT: v.O0.cpp:30: int main(): assertion 'x == 42' failed [ 0:26] # executing void __dios::FaultBase::handler<{Context}>(_VM_Fault, _VM_Frame*, void (*)()) at /dios/sys/fault.hpp:118 [ 0:26] # NOTE: $frame in __dios_fault [ 0:26] > backtrace [ 0:26] void __dios::FaultBase::handler<{Context}>(_VM_Fault, _VM_Frame*, void (*)()) at /dios/sys/fault.hpp:118 [ 0:26] __dios_fault at /dios/arch/divm/fault.c:12 [ 0:26] lart.__assert_fail at /dios/libc/_PDCLIB/assert.c:24 [ 0:26] main at v.O0.cpp:30 [ 0:26] __dios_start at /dios/libc/sys/start.cpp:94 [ 0:26] # executing void __dios::FaultBase::handler<{Context}>(_VM_Fault, _VM_Frame*, void (*)()) at /dios/sys/fault.hpp:118 [ 0:26] # NOTE: $frame in __dios_fault