From c7ab80f743b3e2d34bb702be787507418cc794a8 Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Thu, 14 Oct 2010 15:02:35 -0700 Subject: Typecheck tags in "alt" patterns --- src/boot/me/type.ml | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/boot') diff --git a/src/boot/me/type.ml b/src/boot/me/type.ml index 66dd240e..648618e7 100644 --- a/src/boot/me/type.ml +++ b/src/boot/me/type.ml @@ -903,8 +903,10 @@ let check_stmt (cx:Semant.ctxt) : (fn_ctx -> Ast.stmt -> unit) = let arg_tys = match constr_ty with Ast.TY_fn (ty_sig, _) -> + demand expected (get_slot_ty ty_sig.Ast.sig_output_slot); Array.map get_slot_ty ty_sig.Ast.sig_input_slots | Ast.TY_tag _ -> + demand expected constr_ty; [||] | _ -> type_error "constructor function" constr_ty in -- cgit v1.2.3