Project

General

Profile

Revision add75bcb src/main_lustre_compiler.ml

View differences:

src/main_lustre_compiler.ml
104 104
    let _ = open_in lusi_name in
105 105
    let header = load_lusi true lusi_name in
106 106
    let _, declared_types_env, declared_clocks_env = check_lusi header in
107
    
108
      (* checking type compatibility with computed types*)
107
        
108
    (* checking stateless status compatibility *)
109
    Stateless.check_compat header;
110

  
111
    (* checking type compatibility with computed types*)
109 112
    Typing.check_env_compat header declared_types_env computed_types_env;
110 113
    Typing.uneval_prog_generics prog;
111 114
    
112
      (* checking clocks compatibility with computed clocks*)
113
      Clock_calculus.check_env_compat header declared_clocks_env computed_clocks_env;
114
      Clock_calculus.uneval_prog_generics prog;
115
    (* checking clocks compatibility with computed clocks*)
116
    Clock_calculus.check_env_compat header declared_clocks_env computed_clocks_env;
117
    Clock_calculus.uneval_prog_generics prog
115 118

  
116
      (* checking stateless status compatibility *)
117
      Stateless.check_compat header
118 119
    with Sys_error _ -> ( 
119 120
      (* Printing lusi file is necessary *)
120 121
      Log.report ~level:1 
......
195 196
  
196 197
  (* Sorting nodes *)
197 198
  let prog = SortProg.sort prog in
198
  
199

  
200
  (* Checking stateless/stateful status *)
201
  check_stateless_decls prog;
202

  
199 203
  (* Typing *)
200 204
  let computed_types_env = type_decls type_env prog in
201 205
  
202 206
  (* Clock calculus *)
203 207
  let computed_clocks_env = clock_decls clock_env prog in
204 208

  
205
  (* Checking stateless/stateful status *)
206
  check_stateless_decls prog;
207

  
208 209
  (* Perform global inlining *)
209 210
  let prog =
210 211
    if !Options.global_inline && 

Also available in: Unified diff