Revision b1655a21 src/main_lustre_compiler.ml
src/main_lustre_compiler.ml | ||
---|---|---|
75 | 75 |
Parse.report_error err; |
76 | 76 |
raise exc |
77 | 77 |
| Corelang.Error (loc, err) as exc -> ( |
78 |
eprintf "Parsing error %a%a@." |
|
78 |
eprintf "Parsing error: %a%a@."
|
|
79 | 79 |
Corelang.pp_error err |
80 | 80 |
Location.pp_loc loc; |
81 | 81 |
raise exc |
... | ... | |
93 | 93 |
let header = load_lusi true lusi_name in |
94 | 94 |
let _, declared_types_env, declared_clocks_env = check_lusi header in |
95 | 95 |
|
96 |
(* checking defined types are compatible with declared types*) |
|
97 |
Typing.check_typedef_compat header; |
|
96 | 98 |
|
97 | 99 |
(* checking type compatibility with computed types*) |
98 | 100 |
Typing.check_env_compat header declared_types_env computed_types_env; |
... | ... | |
289 | 291 |
end |
290 | 292 |
else |
291 | 293 |
machine_code |
294 |
in |
|
295 |
let machine_code = |
|
296 |
if !Options.optimization >= 3 && !Options.output <> "horn" then |
|
297 |
begin |
|
298 |
Log.report ~level:1 (fun fmt -> fprintf fmt ".. machines optimization@,"); |
|
299 |
Optimize_machine.machines_fusion machine_code |
|
300 |
end |
|
301 |
else |
|
302 |
machine_code |
|
292 | 303 |
in |
293 | 304 |
Log.report ~level:3 (fun fmt -> fprintf fmt "@[<v 2>@ %a@]@," |
294 | 305 |
(Utils.fprintf_list ~sep:"@ " Machine_code.pp_machine) |
Also available in: Unified diff