diff options
author | Damien Doligez <damien.doligez-inria.fr> | 2006-01-04 16:55:50 +0000 |
---|---|---|
committer | Damien Doligez <damien.doligez-inria.fr> | 2006-01-04 16:55:50 +0000 |
commit | 125ea40d4c63e7bae69e30c2b6ba2b598b1bd5c2 (patch) | |
tree | 6884b9b9821851f7f57add043646b54fe4cc85f3 /toplevel | |
parent | 3aaf0659a4c172c71cbf4828ed3bb6aa833c53e0 (diff) | |
download | ocaml-125ea40d4c63e7bae69e30c2b6ba2b598b1bd5c2.tar.gz |
fusion 3.09.0 -> 3.09.1
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7307 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Diffstat (limited to 'toplevel')
-rw-r--r-- | toplevel/toploop.ml | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/toplevel/toploop.ml b/toplevel/toploop.ml index e0a51ddd2c..7502fa020a 100644 --- a/toplevel/toploop.ml +++ b/toplevel/toploop.ml @@ -132,14 +132,14 @@ let load_lambda ppf lam = may_trace := true; let retval = (Meta.reify_bytecode code code_size) () in may_trace := false; - if can_free then begin + if can_free then begin Meta.static_release_bytecode code code_size; Meta.static_free code; end; Result retval with x -> may_trace := false; - if can_free then begin + if can_free then begin Meta.static_release_bytecode code code_size; Meta.static_free code; end; @@ -205,7 +205,7 @@ let print_exception_outcome ppf exn = let outv = outval_of_value !toplevel_env (Obj.repr exn) Predef.type_exn in print_out_exception ppf exn outv -(* The table of toplevel directives. +(* The table of toplevel directives. Filled by functions from module topdirs. *) let directive_table = (Hashtbl.create 13 : (string, directive_fun) Hashtbl.t) @@ -216,6 +216,7 @@ let execute_phrase print_outcome ppf phr = match phr with | Ptop_def sstr -> let oldenv = !toplevel_env in + let _ = Unused_var.warn ppf sstr in Typecore.reset_delayed_checks (); let (str, sg, newenv) = Typemod.type_structure oldenv sstr in Typecore.force_delayed_checks (); @@ -252,7 +253,7 @@ let execute_phrase print_outcome ppf phr = end with x -> toplevel_env := oldenv; raise x - end + end | Ptop_dir(dir_name, dir_arg) -> try match (Hashtbl.find directive_table dir_name, dir_arg) with @@ -273,7 +274,7 @@ let execute_phrase print_outcome ppf phr = let protect r newval body = let oldval = !r in try - r := newval; + r := newval; let res = body() in r := oldval; res |