summaryrefslogtreecommitdiff
path: root/main.ml
diff options
context:
space:
mode:
Diffstat (limited to 'main.ml')
-rw-r--r--main.ml37
1 files changed, 19 insertions, 18 deletions
diff --git a/main.ml b/main.ml
index 937180e..7e6279c 100644
--- a/main.ml
+++ b/main.ml
@@ -27,11 +27,12 @@ let const_interp = ref false
let interv_interp = ref false
let rel_interp = ref false
let get_interp () =
- if !interv_interp
- then Interp_interv.interpret
- else if !rel_interp
- then Interp_rel.interpret
- else Interp_const.interpret
+ if !interv_interp then
+ Interp_interv.interpret
+ else if !rel_interp then
+ Interp_rel.interpret
+ else
+ Interp_const.interpret
let ifile = ref ""
let set_var v s = v := s
@@ -39,27 +40,27 @@ let set_var v s = v := s
let usage = "usage: analyzer [options] file.c"
let options = [
- "--dump", Arg.Set dump, "Dump program source.";
- "--const-interp", Arg.Set const_interp, "Use constant lattice interpreter.";
- "--interv-interp", Arg.Set interv_interp, "Use interval lattice interpreter.";
- "--rel-interp", Arg.Set rel_interp, "Use relationnal (Apron) lattice.";
+ "--dump", Arg.Set dump, "Dump program source.";
+ "--const-interp", Arg.Set const_interp, "Use constant lattice interpreter.";
+ "--interv-interp", Arg.Set interv_interp, "Use interval lattice interpreter.";
+ "--rel-interp", Arg.Set rel_interp, "Use relationnal (Apron) lattice.";
]
(* parse and print filename *)
let doit filename =
- let prog = File_parser.parse_file filename in
- if !dump then Abstract_syntax_printer.print_prog Format.std_formatter prog;
- (get_interp ()) prog
+ let prog = File_parser.parse_file filename in
+ if !dump then Abstract_syntax_printer.print_prog Format.std_formatter prog;
+ (get_interp ()) prog
(* parses arguments to get filename *)
let main () =
- Arg.parse options (set_var ifile) usage;
+ Arg.parse options (set_var ifile) usage;
- if !ifile = "" then begin
- Format.eprintf "No input file...@.";
- exit 1
- end;
+ if !ifile = "" then begin
+ Format.eprintf "No input file...@.";
+ exit 1
+ end;
- doit !ifile
+ doit !ifile
let _ = main ()