Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions src/check_ir.ml
Original file line number Diff line number Diff line change
Expand Up @@ -794,20 +794,20 @@ and gather_dec env scope dec : scope =

(* Programs *)

let check_prog scope ((decs, flavor) as prog) : unit =
let check_prog scope phase ((decs, flavor) as prog) : unit =
let env = env_of_scope scope flavor in
try
ignore (check_block env T.unit decs no_region)
with CheckFailed s ->
let bt = Printexc.get_backtrace () in
if !Flags.verbose
then begin
Printf.eprintf "Ill-typed intermediate code:\n";
Printf.eprintf "Ill-typed intermediate code after %s:\n" phase;
Printf.eprintf "%s" (Wasm.Sexpr.to_string 80 (Arrange_ir.prog prog));
Printf.eprintf "%s" s;
Printf.eprintf "%s" bt;
end else begin
Printf.eprintf "Ill-typed intermediate code (use -v to see dumped IR):\n";
Printf.eprintf "Ill-typed intermediate code after %s (use -v to see dumped IR):\n" phase;
Printf.eprintf "%s" s;
Printf.eprintf "%s" bt;
end;
Expand Down
3 changes: 1 addition & 2 deletions src/check_ir.mli
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
val check_prog : Typing.scope -> Ir.prog -> unit

val check_prog : Typing.scope -> string -> Ir.prog -> unit
5 changes: 2 additions & 3 deletions src/pipeline.ml
Original file line number Diff line number Diff line change
Expand Up @@ -123,8 +123,7 @@ let transform_ir transform_name transform flag env prog name =
phase transform_name name;
let prog' : Ir.prog = transform prog in
dump_ir Flags.dump_lowering prog';
(* Check_ir.check_prog env prog; *)
Check_ir.check_prog env prog';
Check_ir.check_prog env transform_name prog;
prog'
end
else prog
Expand Down Expand Up @@ -292,7 +291,7 @@ let compile_with check mode name : compile_result =
Diag.print_messages msgs;
let prelude = Desugar.transform Typing.empty_scope prelude in
let prog = Desugar.transform initial_stat_env prog in
Check_ir.check_prog initial_stat_env prog;
Check_ir.check_prog initial_stat_env "desugaring" prog;
let prog = await_lowering true initial_stat_env prog name in
let prog = async_lowering true initial_stat_env prog name in
let prog = tailcall_optimization true initial_stat_env prog name in
Expand Down