diff options
Diffstat (limited to 'typing')
| -rw-r--r-- | typing/typecore.ml | 22 | ||||
| -rw-r--r-- | typing/typedtree.ml | 1 | ||||
| -rw-r--r-- | typing/typedtree.mli | 1 | ||||
| -rw-r--r-- | typing/unused_var.ml | 1 |
4 files changed, 0 insertions, 25 deletions
diff --git a/typing/typecore.ml b/typing/typecore.ml index cc9a535a3d..08b124bfee 100644 --- a/typing/typecore.ml +++ b/typing/typecore.ml @@ -1652,28 +1652,6 @@ let rec type_exp env sexp = exp_type = create_package_type loc env (p, l); exp_env = env } - | Pexp_unpack (e1, name, (p, l), sbody) -> - let loc = sexp.pexp_loc in - let ty = newvar() in - Ident.set_current_time ty.level; - let l, mty = Typetexp.create_package_mty loc env (p, l) in - let mty = !Typetexp.transl_modtype env mty in - let arg = type_expect env e1 (create_package_type loc env (p, l)) in - let (id, new_env) = Env.enter_module name mty env in - Ctype.init_def(Ident.current_time()); - - let body = type_exp new_env sbody in - begin try - Ctype.unify new_env body.exp_type ty - with Unify _ -> - raise(Error(loc, Scoping_let_module(name, body.exp_type))) - end; - re { - exp_desc = Texp_unpack(arg, id, body); - exp_loc = loc; - exp_type = ty; - exp_env = env } - and type_argument env sarg ty_expected' = (* ty_expected' may be generic *) let no_labels ty = diff --git a/typing/typedtree.ml b/typing/typedtree.ml index 891ba9ed95..e2b7e285e9 100644 --- a/typing/typedtree.ml +++ b/typing/typedtree.ml @@ -80,7 +80,6 @@ and expression_desc = | Texp_lazy of expression | Texp_object of class_structure * class_signature * string list | Texp_pack of module_expr - | Texp_unpack of expression * Ident.t * expression and meth = Tmeth_name of string diff --git a/typing/typedtree.mli b/typing/typedtree.mli index b7feee4c2c..a7ea525d98 100644 --- a/typing/typedtree.mli +++ b/typing/typedtree.mli @@ -79,7 +79,6 @@ and expression_desc = | Texp_lazy of expression | Texp_object of class_structure * class_signature * string list | Texp_pack of module_expr - | Texp_unpack of expression * Ident.t * expression and meth = Tmeth_name of string diff --git a/typing/unused_var.ml b/typing/unused_var.ml index c38b4d051b..589941d992 100644 --- a/typing/unused_var.ml +++ b/typing/unused_var.ml @@ -175,7 +175,6 @@ and expression ppf tbl e = | Pexp_object cs -> class_structure ppf tbl cs; | Pexp_newtype (_, e) -> expression ppf tbl e | Pexp_pack (me, _) -> module_expr ppf tbl me - | Pexp_unpack (e1, _, _, e2) -> expression ppf tbl e1; expression ppf tbl e2 and expression_option ppf tbl eo = match eo with |
