let cmdline_run () =
let wp_main kf_list =
Ast.compute ();
Axiomatics.compute ();
let fun_iter = match kf_list with
| [] -> on_all_functions
| names -> on_function_names names
in
let bhvs = Wp_parameters.get_behaviors () in
let property =
match Wp_parameters.get_properties () with
| None -> None
| Some [p] -> Some (NamedProp p)
| Some _ ->
Wp_parameters.not_yet_implemented "several properties in -wp-prop"
in
do_wp_passes fun_iter bhvs property
in
match Wp_parameters.job () with
| Wp_parameters.WP_None ->
do_wp_checks () ;
do_wp_proofs () ;
do_wp_print ()
| Wp_parameters.WP_All ->
ignore (wp_main []) ;
do_wp_checks () ;
do_wp_proofs () ;
do_wp_print ()
| Wp_parameters.WP_Select fcts ->
let goals = wp_main fcts in
do_wp_checks_for goals ;
do_wp_proofs_for goals ;
do_wp_print_for goals