diff options
| author | msozeau | 2008-06-18 15:14:05 +0000 |
|---|---|---|
| committer | msozeau | 2008-06-18 15:14:05 +0000 |
| commit | aecc008e57ca056552c8bbb156d2b45b70575c1d (patch) | |
| tree | ed6fd12bdd314886cceefd969afb116235af2524 /tactics | |
| parent | d0a70257ff4261e4ac1738c3de6880d69e393eb9 (diff) | |
Fix bug in implementation of splitting of class constraints.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11141 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'tactics')
| -rw-r--r-- | tactics/class_tactics.ml4 | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/tactics/class_tactics.ml4 b/tactics/class_tactics.ml4 index 9457403cc9..a353a4222f 100644 --- a/tactics/class_tactics.ml4 +++ b/tactics/class_tactics.ml4 @@ -450,7 +450,10 @@ let select_evars evs evm = let resolve_all_evars debug m env p oevd do_split fail = let oevm = Evd.evars_of oevd in let split = if do_split then split_evars (Evd.evars_of (Evd.undefined_evars oevd)) else [Intset.empty] in - let p = if do_split then fun comp ev evi -> Intset.mem ev comp && p ev evi else fun _ -> p in + let p = if do_split then + fun comp ev evi -> (Intset.mem ev comp || not (Evd.mem oevm ev)) && p ev evi + else fun _ -> p + in let rec aux n p evd = if has_undefined p oevm evd then if n > 0 then |
