Opened 6 years ago
Closed 5 years ago
#38 closed defect (fixed)
Report attempts to use symbolic data if symbolic is disable
Reported by: | Vladimír Štill | Owned by: | mornfall |
---|---|---|---|
Priority: | major | Milestone: | 5.0 |
Component: | other | Keywords: | |
Cc: |
Description
Currently, if a benchmark which contains symbolic data is analyzed without --symbolic
, DIVINE silently proceeds with 0 as the value of would-be-symbolic variables. E.g., divine check test/sym/call-a.pkg.cpp
reports no errors. This situation should be reported as an error, or, alternatively, DIVINE should auto-configure based on the analyzed program and run --symbolic
automatically (but this would be harder probably).
Change History (2)
comment:1 Changed 6 years ago by
Milestone: | future → 5.0 |
---|
comment:2 Changed 5 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
As of today's next
, it should be impossible to accidentally run symbolic models in explicit mode.
$ divine check boom.c compiling boom.c loading bitcode … DiOS … LART … RR … constants … ERROR: unresolved symbol (function): __lamp_any_i8 $ divine check --lamp-config symbolic boom.c compiling boom.c loading bitcode … DiOS … LART … RR … constants … done booting … done states per second: 26.3158 state count: 1 mips: 0 ERROR: Cannot evaluate an assumption without a solver. Did you mean to use --symbolic? $ divine check --symbolic boom.c compiling boom.c loading bitcode … DiOS … LART … RR … constants … done booting … done states per second: 38.961 state count: 3 mips: 0.28 symbolic: 1 error found: yes error trace: | ASSUME (not (= var_1 #x00000000)) (0) Non-zero exit code: 1 FAULT: exit called with non-zero value [0] FATAL: unknown in userspace active stack: - symbol: void __dios::FaultBase::handler<__dios::Context>(_VM_Fault, _VM_Frame*, void (*)()) location: /dios/sys/fault.hpp:119 - symbol: __dios_fault location: /dios/arch/divm/fault.c:12 - symbol: _exit location: /dios/libc/sys/start.cpp:62 - symbol: _Exit location: /dios/libc/stdlib/_Exit.c:19 - symbol: exit location: /dios/libc/stdlib/exit.c:6 - symbol: __dios_start location: /dios/libc/sys/start.cpp:110 a report was written to boom.report
Note: See
TracTickets for help on using
tickets.
Milestone renamed