From 4c5e9bbe6b98d6138f7943f7b017fbd411f109c8 Mon Sep 17 00:00:00 2001 From: Jacques Garrigue Date: Mon, 30 Sep 2013 11:35:15 +0000 Subject: mostly works, but: * a strange bug in open * spurious bindings in the lambda code git-svn-id: http://caml.inria.fr/svn/ocaml/branches/module-alias@14200 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02 --- bytecomp/printlambda.ml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'bytecomp/printlambda.ml') diff --git a/bytecomp/printlambda.ml b/bytecomp/printlambda.ml index 8774e72b8..46e47ec08 100644 --- a/bytecomp/printlambda.ml +++ b/bytecomp/printlambda.ml @@ -255,12 +255,15 @@ let rec lam ppf = function fprintf ppf ")" in fprintf ppf "@[<2>(function%a@ %a)@]" pr_params params lam body | Llet(str, id, arg, body) -> + let kind = function + Alias -> "a" | Strict -> "" | StrictOpt -> "o" | Variable -> "v" in let rec letbody = function | Llet(str, id, arg, body) -> - fprintf ppf "@ @[<2>%a@ %a@]" Ident.print id lam arg; + fprintf ppf "@ @[<2>%a =%s@ %a@]" Ident.print id (kind str) lam arg; letbody body | expr -> expr in - fprintf ppf "@[<2>(let@ @[(@[<2>%a@ %a@]" Ident.print id lam arg; + fprintf ppf "@[<2>(let@ @[(@[<2>%a =%s@ %a@]" + Ident.print id (kind str) lam arg; let expr = letbody body in fprintf ppf ")@]@ %a)@]" lam expr | Lletrec(id_arg_list, body) -> -- cgit v1.2.3-70-g09d2