aboutsummaryrefslogtreecommitdiff
path: root/interp
diff options
context:
space:
mode:
authorherbelin2003-08-14 13:41:39 +0000
committerherbelin2003-08-14 13:41:39 +0000
commit4135e812a99fdfd7404fd354f31f286a4b4f005a (patch)
treefd831a1e14acfa8c3c9a63b625e11135413506e1 /interp
parent8595888095feba842ebe880a91edbad170b0023a (diff)
Traducteur de correctness
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@4275 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'interp')
-rw-r--r--interp/constrextern.ml10
-rw-r--r--interp/constrextern.mli1
2 files changed, 9 insertions, 2 deletions
diff --git a/interp/constrextern.ml b/interp/constrextern.ml
index 97e9855de8..5c7deb8852 100644
--- a/interp/constrextern.ml
+++ b/interp/constrextern.ml
@@ -625,12 +625,18 @@ let extern_cases_pattern vars p =
let loc = dummy_loc (* for constr and pattern, locations are lost *)
-let extern_constr at_top env t =
+let extern_constr_gen at_top scopt env t =
let vars = vars_of_env env in
let avoid = if at_top then ids_of_context env else [] in
- extern (not at_top) (None,Symbols.current_scopes()) vars
+ extern (not at_top) (scopt,Symbols.current_scopes()) vars
(Detyping.detype env avoid (names_of_rel_context env) t)
+let extern_constr_in_scope at_top scope env t =
+ extern_constr_gen at_top (Some scope) env t
+
+let extern_constr at_top env t =
+ extern_constr_gen at_top None env t
+
(******************************************************************)
(* Main translation function from pattern -> constr_expr *)
diff --git a/interp/constrextern.mli b/interp/constrextern.mli
index 008957e1bb..c5595f5a9e 100644
--- a/interp/constrextern.mli
+++ b/interp/constrextern.mli
@@ -39,6 +39,7 @@ val extern_pattern : env -> names_context -> constr_pattern -> constr_expr
level of quantification clashing with the variables in [env] are renamed *)
val extern_constr : bool -> env -> constr -> constr_expr
+val extern_constr_in_scope : bool -> scope_name -> env -> constr -> constr_expr
val extern_reference : loc -> Idset.t -> global_reference -> reference
(* For debugging *)