aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar herbelin <herbelin@85f007b7-540e-0410-9357-904b9bb8a0f7>2000-10-11 13:36:19 +0000
committerGravatar herbelin <herbelin@85f007b7-540e-0410-9357-904b9bb8a0f7>2000-10-11 13:36:19 +0000
commitd510a00bbe0223a34e1fe2f8ad77f9141ec700e2 (patch)
tree1a08470dddb6ec3bac38d9fdd49134926f7ef162
parent513b547b55c73b2579206d762f0a136c3b11a66b (diff)
Bug affichage du nom des letin
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@682 85f007b7-540e-0410-9357-904b9bb8a0f7
-rw-r--r--pretyping/detyping.ml13
1 files changed, 10 insertions, 3 deletions
diff --git a/pretyping/detyping.ml b/pretyping/detyping.ml
index a02cf96a6..a49bcb098 100644
--- a/pretyping/detyping.ml
+++ b/pretyping/detyping.ml
@@ -68,6 +68,10 @@ let concrete_name l env_names n c =
let idopt = if dependent (mkRel 1) c then (Some fresh_id) else None in
(idopt, fresh_id::l)
+let concrete_let_name l env_names n c =
+ let fresh_id = next_name_not_occuring n l env_names c in
+ (Name fresh_id, fresh_id::l)
+
(* Returns the list of global variables and constants in a term *)
let global_vars_and_consts t =
let rec collect acc c =
@@ -370,9 +374,12 @@ and detype_eqn avoid env constr_id construct_nargs branch =
buildrec [] [] avoid env construct_nargs branch
and detype_binder bk avoid env na ty c =
- let na',avoid' = match concrete_name avoid env na c with
- | (Some id,l') -> (Name id), l'
- | (None,l') -> Anonymous, l' in
+ let na',avoid' =
+ if bk = BLetIn then concrete_let_name avoid env na c
+ else
+ match concrete_name avoid env na c with
+ | (Some id,l') -> (Name id), l'
+ | (None,l') -> Anonymous, l' in
RBinder (dummy_loc,bk,
na',detype [] env ty,
detype avoid' (add_name na' env) c)