aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar barras <barras@85f007b7-540e-0410-9357-904b9bb8a0f7>2004-07-13 18:35:43 +0000
committerGravatar barras <barras@85f007b7-540e-0410-9357-904b9bb8a0f7>2004-07-13 18:35:43 +0000
commit3b75964509a52ec779f64ebded388cc35da1a806 (patch)
tree9f3c3c2a568661dd515c24b217cff48f45b913e2
parentcc47337b01227c35dc42ae4b87b0cba20fde9ed5 (diff)
bug #780: compilation of several units in the same coqtop process
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@5900 85f007b7-540e-0410-9357-904b9bb8a0f7
-rw-r--r--library/lib.ml1
-rw-r--r--toplevel/coqtop.ml2
2 files changed, 3 insertions, 0 deletions
diff --git a/library/lib.ml b/library/lib.ml
index c5bc798d9..53c6e2b05 100644
--- a/library/lib.ml
+++ b/library/lib.ml
@@ -350,6 +350,7 @@ let end_compilation dir =
" and not " ^ (string_of_dirpath m));
in
let (after,_,before) = split_lib oname in
+ comp_name := None;
!path_prefix,after
(* Returns true if we are inside an opened module type *)
diff --git a/toplevel/coqtop.ml b/toplevel/coqtop.ml
index f81a16616..1b75287b5 100644
--- a/toplevel/coqtop.ml
+++ b/toplevel/coqtop.ml
@@ -105,8 +105,10 @@ let add_compile verbose s =
Options.make_silent true;
compile_list := (verbose,s) :: !compile_list
let compile_files () =
+ let init_state = States.freeze() in
List.iter
(fun (v,f) ->
+ States.unfreeze init_state;
if Options.do_translate () then
with_option translate_file (Vernac.compile v) f
else