From f9695eb4bc5b377a02f49ee485d7fe9be122c183 Mon Sep 17 00:00:00 2001 From: Hugo Herbelin Date: Sat, 11 Jun 2016 07:36:46 +0200 Subject: Fixing #4782 (a typing error not captured when dealing with bindings). Trying to now catch all unification errors, but without a clear view at whether some errors could be tolerated at the point of checking the type of the binding. --- proofs/clenv.ml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'proofs') 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 -- cgit v1.2.3 From 827663982e9cdf502f21727677515cf2318aa41d Mon Sep 17 00:00:00 2001 From: Hugo Herbelin Date: Sun, 12 Jun 2016 14:53:38 +0200 Subject: Another fix to #4782 (a typing error not captured when dealing with bindings). The tentative fix in f9695eb4b (which I was afraid it might be too strong, since it was implying failing more often) indeed broke other things (see #4813). --- proofs/clenv.ml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'proofs') diff --git a/proofs/clenv.ml b/proofs/clenv.ml index 09e77602df..79b331a273 100644 --- a/proofs/clenv.ml +++ b/proofs/clenv.ml @@ -459,7 +459,8 @@ 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 _) as e -> + | PretypeError (_,_,ActualTypeNotCoercible (_,_, + (NotClean _ | ConversionFailed _))) as e -> raise e | e when precatchable_exception e -> TypeNotProcessed, clenv, c -- cgit v1.2.3