diff options
author | Matthieu Sozeau <mattam@mattam.org> | 2016-03-14 11:13:21 +0100 |
---|---|---|
committer | Matthieu Sozeau <mattam@mattam.org> | 2016-03-14 11:40:46 +0100 |
commit | fc7264feee8ee62aeda8af4d756deb009f29fc2b (patch) | |
tree | e19c0fd46f702f02695817968f6a1ff0ad43fcb9 | |
parent | 3366f05ab09aa90dcc96d7432bff09617162c3e4 (diff) |
Try eta-expansion of records only on non-recursive ones
-rw-r--r-- | pretyping/unification.ml | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/pretyping/unification.ml b/pretyping/unification.ml index 03a700e17..15e8022af 100644 --- a/pretyping/unification.ml +++ b/pretyping/unification.ml @@ -629,7 +629,7 @@ let is_eta_constructor_app env ts f l1 term = | Construct (((_, i as ind), j), u) when i == 0 && j == 1 -> let mib = lookup_mind (fst ind) env in (match mib.Declarations.mind_record with - | Some (Some (_,exp,projs)) when mib.Declarations.mind_finite <> Decl_kinds.CoFinite && + | Some (Some (_,exp,projs)) when mib.Declarations.mind_finite == Decl_kinds.BiFinite && Array.length projs == Array.length l1 - mib.Declarations.mind_nparams -> (** Check that the other term is neutral *) is_neutral env ts term |