let syntactic () =
begin
match AST_type.get () with
| "cil" ->
let r = !Db.Metrics.compute () in
Metrics.result
"@[<v 0>Syntactic metrics@ -----------------@ %a@]"
!Db.Metrics.pretty r
(* Cabs metrics are experimental. unregistered, unjournalized *)
| "cabs" -> Metrics_cabs.compute_on_cabs ()
| _ -> assert false (* the possible values are checked by the kernel*)
end;
SyntacticallyReachable.iter
(fun s ->
try let kf = Globals.Functions.find_by_name s in
Metrics.result "%a" Metrics_coverage.pp_reached_from_function kf
with Not_found -> Metrics.error "Unknown function %s" s
);