diff options
| author | Pierre Boutillier | 2014-04-02 11:22:21 +0200 |
|---|---|---|
| committer | Pierre Boutillier | 2014-04-02 11:23:25 +0200 |
| commit | c3feef4ed5dec126f1144dec91eee9c0f0522a94 (patch) | |
| tree | 478f1c004e87cdd18e92766ddbc47767d231f36a | |
| parent | f963cf312d5a8ebb84af92489be5efd49fe6f434 (diff) | |
Fix Bug 3217
Normalize the term to see if there are arguments to daclare implicits only if
at least one argument occurs in the non normal form
| -rw-r--r-- | library/impargs.ml | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/library/impargs.ml b/library/impargs.ml index 5ec21a3c92..1bcff86953 100644 --- a/library/impargs.ml +++ b/library/impargs.ml @@ -207,7 +207,8 @@ let add_free_rels_until strict strongly_strict revpat bound env m pos acc = | _ -> iter_constr_with_full_binders push_lift (frec rig) ed c in - frec true (env,1) m; acc + let () = if not (Vars.noccur_between 1 bound m) then frec true (env,1) m in + acc let rec is_rigid_head t = match kind_of_term t with | Rel _ | Evar _ -> false |
