diff options
Diffstat (limited to 'tactics')
| -rw-r--r-- | tactics/hipattern.ml4 | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/tactics/hipattern.ml4 b/tactics/hipattern.ml4 index 286aa94929..ede813cdba 100644 --- a/tactics/hipattern.ml4 +++ b/tactics/hipattern.ml4 @@ -58,9 +58,12 @@ let is_non_recursive_type t = op2bool (match_with_non_recursive_type t) (* Test dependencies *) +(* NB: we consider also the let-in case in the following function, + since they may appear in types of inductive constructors (see #2629) *) + let rec has_nodep_prod_after n c = match kind_of_term c with - | Prod (_,_,b) -> + | Prod (_,_,b) | LetIn (_,_,_,b) -> ( n>0 || not (dependent (mkRel 1) b)) && (has_nodep_prod_after (n-1) b) | _ -> true |
