diff options
| author | letouzey | 2013-10-23 22:17:07 +0000 |
|---|---|---|
| committer | letouzey | 2013-10-23 22:17:07 +0000 |
| commit | 5e6145c871eea1e94566b252b4bfc4cd752f42d5 (patch) | |
| tree | 97dfa98357cb0cf90bf06c9d470e6788de84c3b1 /tactics/equality.ml | |
| parent | 9b56e832ef591379dd1f2b29fe7d88513f7caf50 (diff) | |
cList: set-as-list functions are now with an explicit comparison
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@16920 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'tactics/equality.ml')
| -rw-r--r-- | tactics/equality.ml | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/tactics/equality.ml b/tactics/equality.ml index f5af80b0d5..9bc86a0b97 100644 --- a/tactics/equality.ml +++ b/tactics/equality.ml @@ -430,7 +430,7 @@ let general_multi_rewrite l2r with_evars ?tac c cl = (* If the term to rewrite uses an hypothesis H, don't rewrite in H *) let ids = let ids_in_c = Environ.global_vars_set (Global.env()) (fst c) in - Id.Set.fold (fun id l -> List.remove id l) ids_in_c (pf_ids_of_hyps gl) + Id.Set.fold (fun id l -> List.remove Id.equal id l) ids_in_c (pf_ids_of_hyps gl) in do_hyps_atleastonce ids gl in if cl.concl_occs == NoOccurrences then do_hyps else @@ -565,7 +565,9 @@ let find_positions env sigma t1 t2 = | Construct sp1, Construct sp2 when Int.equal (List.length args1) (mis_constructor_nargs_env env sp1) -> - let sorts = List.intersect sorts (allowed_sorts env (fst sp1)) in + let sorts = + List.intersect Sorts.family_equal sorts (allowed_sorts env (fst sp1)) + in (* both sides are fully applied constructors, so either we descend, or we can discriminate here. *) if is_conv env sigma hd1 hd2 then |
