diff options
| author | msozeau | 2011-03-10 17:17:06 +0000 |
|---|---|---|
| committer | msozeau | 2011-03-10 17:17:06 +0000 |
| commit | 36b8aa6b0a6302e1675df623bf28e86029bb40f5 (patch) | |
| tree | 250ad309844d8b1472dcd81a3292cd8447fe019a | |
| parent | 8a78cc1f4cc51423a5eccfd2d07a2133a84f670b (diff) | |
Forgot a use of evars_reset_evd in nf_evars, add an optional argument as
in the 8.3 patch.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@13903 85f007b7-540e-0410-9357-904b9bb8a0f7
| -rw-r--r-- | pretyping/evd.ml | 4 | ||||
| -rw-r--r-- | pretyping/evd.mli | 2 | ||||
| -rw-r--r-- | proofs/clenv.ml | 2 | ||||
| -rw-r--r-- | tactics/class_tactics.ml4 | 2 |
4 files changed, 6 insertions, 4 deletions
diff --git a/pretyping/evd.ml b/pretyping/evd.ml index 706a93527c..33ad751523 100644 --- a/pretyping/evd.ml +++ b/pretyping/evd.ml @@ -414,7 +414,9 @@ let empty = { metas=Metamap.empty } -let evars_reset_evd evd d = {d with evars = evd.evars; conv_pbs = evd.conv_pbs} +let evars_reset_evd ?(with_conv_pbs=false) evd d = + {d with evars = evd.evars; + conv_pbs = if with_conv_pbs then evd.conv_pbs else d.conv_pbs } let add_conv_pb pb d = {d with conv_pbs = pb::d.conv_pbs} let evar_source evk d = (EvarMap.find d.evars evk).evar_source diff --git a/pretyping/evd.mli b/pretyping/evd.mli index 8c31d6af3e..e5a40b5a14 100644 --- a/pretyping/evd.mli +++ b/pretyping/evd.mli @@ -177,7 +177,7 @@ val existential_opt_value : evar_map -> existential -> constr option val subst_evar_defs_light : substitution -> evar_map -> evar_map (** spiwack: this function seems to somewhat break the abstraction. *) -val evars_reset_evd : evar_map -> evar_map -> evar_map +val evars_reset_evd : ?with_conv_pbs:bool -> evar_map -> evar_map -> evar_map (* spiwack: [is_undefined_evar] should be considered a candidate diff --git a/proofs/clenv.ml b/proofs/clenv.ml index 8c4faa11cf..687bf32c62 100644 --- a/proofs/clenv.ml +++ b/proofs/clenv.ml @@ -328,7 +328,7 @@ let evar_clenv_unique_resolver = clenv_unique_resolver (******************************************************************) let connect_clenv gls clenv = - let evd = evars_reset_evd gls.sigma clenv.evd in + let evd = evars_reset_evd ~with_conv_pbs:true gls.sigma clenv.evd in { clenv with evd = evd ; env = Goal.V82.env evd (sig_it gls) } diff --git a/tactics/class_tactics.ml4 b/tactics/class_tactics.ml4 index 71bae61eef..cf7faed905 100644 --- a/tactics/class_tactics.ml4 +++ b/tactics/class_tactics.ml4 @@ -411,7 +411,7 @@ let run_on_evars ?(only_classes=true) ?(st=full_transparent_state) p evm tac = let res = run_list_tac tac p goals (make_autogoals ~only_classes ~st goals evm') in match get_result res with | None -> raise Not_found - | Some (evm', fk) -> Some (evars_reset_evd evm' evm, fk) + | Some (evm', fk) -> Some (evars_reset_evd ~with_conv_pbs:true evm' evm, fk) let eauto_tac hints = fix (or_tac (then_tac normevars_tac (hints_tac hints)) intro_tac) |
