diff options
| -rw-r--r-- | proofs/clenv.ml | 2 | ||||
| -rw-r--r-- | test-suite/bugs/closed/4782.v | 8 |
2 files changed, 9 insertions, 1 deletions
diff --git a/proofs/clenv.ml b/proofs/clenv.ml index 88e1bce95a..09e77602df 100644 --- a/proofs/clenv.ml +++ b/proofs/clenv.ml @@ -459,7 +459,7 @@ let clenv_unify_binding_type clenv c t u = let evd,c = w_coerce_to_type (cl_env clenv) clenv.evd c t u in TypeProcessed, { clenv with evd = evd }, c with - | PretypeError (_,_,ActualTypeNotCoercible (_,_,NotClean _)) as e -> + | PretypeError (_,_,ActualTypeNotCoercible _) as e -> raise e | e when precatchable_exception e -> TypeNotProcessed, clenv, c diff --git a/test-suite/bugs/closed/4782.v b/test-suite/bugs/closed/4782.v new file mode 100644 index 0000000000..4622b18d28 --- /dev/null +++ b/test-suite/bugs/closed/4782.v @@ -0,0 +1,8 @@ +(* About typing of with bindings *) + +Record r : Type := mk_r { type : Type; cond : type -> Prop }. + +Inductive p : Prop := consp : forall (e : r) (x : type e), cond e x -> p. + +Goal p. +Fail apply consp with (fun _ : bool => mk_r unit (fun x => True)) nil. |
