aboutsummaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authorherbelin2009-12-01 12:05:57 +0000
committerherbelin2009-12-01 12:05:57 +0000
commit0780de3f579681aa80e5e353d3aaeeaa418f2369 (patch)
tree6b7972209d1f181bf2182f6c8228f96ea2910824 /plugins
parent986dc499c5ff0bfda89537ee1be7b6c512c2846d (diff)
Continuing r12485-12486 (cleaning around name generation)
- backtrack on incompatibility introduced in intro while trying to simplify the condition about when to restart the subscript of a name (the legacy says: find a new name from x0 if the name xN exists in the context but find a new name from xN+1 if the name xN does not exists in the context but is a global to avoid). - made the names chosen by "intro" compliant with the ones printed in the goal and used for "intros until" (possible source of rare incompatibilities) [replaced the use of visibly_occur_id for printing the goal into a call to next_name_away_in_goal] - also made the names internal to T in "T -> U" printed the same in the goal as they are while printing T after it is introducted in the hypotheses [non contravariant propagation of boolean isgoal in detype_binder] - simplified a bit visibly_occur_id (the Rel and Var cases were useless as soon as the avoid list contained the current env); still this function is costly with polynomial time in the depth of binders - see file output/Naming.v for examples git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12549 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'plugins')
-rw-r--r--plugins/funind/recdef.ml3
1 files changed, 2 insertions, 1 deletions
diff --git a/plugins/funind/recdef.ml b/plugins/funind/recdef.ml
index 469f87f15b..5c910c4247 100644
--- a/plugins/funind/recdef.ml
+++ b/plugins/funind/recdef.ml
@@ -51,7 +51,8 @@ open Genarg
let compute_renamed_type gls c =
- rename_bound_vars_as_displayed (pf_env gls) [] (pf_type_of gls c)
+ let ids = collect_visible_vars c in
+ rename_bound_vars_as_displayed ids (pf_type_of gls c)
let qed () = Lemmas.save_named true
let defined () = Lemmas.save_named false