diff --git a/src/main.ml b/src/main.ml index b0397bb85b1f4b9d700be7949d075613336db8b3..21341671187ca08e0d94296534af633244672b00 100644 --- a/src/main.ml +++ b/src/main.ml @@ -292,7 +292,10 @@ let _ = add_to_report "e" "E" (Code (file_contents file))); run "Elang" !e_run eval_eprog ep; - cfg_prog_of_eprog ep >>! fun cfg -> + match cfg_prog_of_eprog ep with + | Error msg -> + record_compile_result ~error:(Some msg) "CFG"; + | OK cfg -> record_compile_result ~data:([(`Assoc (List.map (fun (fname,Prog.Gfun cfgfun) -> (fname, `Int (Cfg.size_fun cfgfun.cfgfunbody))) cfg))]) "CFG"; dump !cfg_dump dump_cfg_prog cfg (call_dot "cfg" "CFG");