Skip to content

Commit 13f0252

Browse files
Use goto verifier for fault localization in CBMC
Available by using multi-path symex checker
1 parent 2289f02 commit 13f0252

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

src/cbmc/cbmc_parse_options.cpp

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ Author: Daniel Kroening, [email protected]
3535

3636
#include <goto-checker/all_properties_verifier.h>
3737
#include <goto-checker/all_properties_verifier_with_trace_storage.h>
38+
#include <goto-checker/all_properties_verifier_with_fault_localization.h>
3839
#include <goto-checker/bmc_util.h>
3940
#include <goto-checker/cover_goals_verifier_with_trace_storage.h>
4041
#include <goto-checker/multi_path_symex_checker.h>
@@ -43,6 +44,7 @@ Author: Daniel Kroening, [email protected]
4344
#include <goto-checker/single_path_symex_checker.h>
4445
#include <goto-checker/single_path_symex_only_checker.h>
4546
#include <goto-checker/stop_on_fail_verifier.h>
47+
#include <goto-checker/stop_on_fail_verifier_with_fault_localization.h>
4648

4749
#include <goto-programs/adjust_float_expressions.h>
4850
#include <goto-programs/initialize_goto_model.h>
@@ -617,10 +619,11 @@ int cbmc_parse_optionst::doit()
617619
{
618620
if(options.get_bool_option("stop-on-fail"))
619621
{
620-
if(options.get_bool_option("paths"))
622+
if(options.get_bool_option("localize-faults"))
621623
{
622624
verifier =
623-
util_make_unique<stop_on_fail_verifiert<single_path_symex_checkert>>(
625+
util_make_unique<stop_on_fail_verifier_with_fault_localizationt<
626+
multi_path_symex_checkert>>(
624627
options, ui_message_handler, goto_model);
625628
}
626629
else
@@ -632,10 +635,12 @@ int cbmc_parse_optionst::doit()
632635
}
633636
else
634637
{
635-
if(options.get_bool_option("paths"))
638+
if(options.get_bool_option("localize-faults"))
636639
{
637-
verifier = util_make_unique<all_properties_verifier_with_trace_storaget<
638-
single_path_symex_checkert>>(options, ui_message_handler, goto_model);
640+
verifier =
641+
util_make_unique<all_properties_verifier_with_fault_localizationt<
642+
multi_path_symex_checkert>>(
643+
options, ui_message_handler, goto_model);
639644
}
640645
else
641646
{

0 commit comments

Comments
 (0)