]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/ng_refiner/check.ml
fix convertibility in case of application test_eq_only is =true for
[helm.git] / helm / software / components / ng_refiner / check.ml
index 7d13b9a35df112e7a76d5441203d2dae77dbf129..4e85f9bae069d64214ccb599d4d9579e6e83f62c 100644 (file)
@@ -193,7 +193,7 @@ let _ =
     | NCicTypeChecker.TypeCheckerFailure s
     | NCicEnvironment.ObjectNotFound s
     | NCicEnvironment.BadConstraint s
-    | NCicEnvironment.BadDependency s as e -> 
+    | NCicEnvironment.BadDependency (s,_) as e -> 
        prerr_endline ("######### " ^ Lazy.force s);
        if not ignore_exc then raise e
     )
@@ -226,6 +226,8 @@ let _ =
                  (fun e ctx -> e::ctx) ctx perforate metasenv t
           in
           let rec curryfy ctx = function
+            | NCic.Lambda (name, (NCic.Sort _ as s), tgt) ->
+                NCic.Lambda (name, s, curryfy ((name,NCic.Decl s) :: ctx) tgt)
             | NCic.Lambda (name, s, tgt) ->
                 let tgt = curryfy ((name,NCic.Decl s) :: ctx) tgt in
                 NCic.Lambda (name, NCic.Implicit `Type, tgt)
@@ -269,11 +271,13 @@ let _ =
           let bo = curryfy [] bo in
           (try 
             let metasenv, subst, bo, infty = 
-              NCicRefiner.typeof [] [] [] bo None
+              NCicRefiner.typeof 
+                ~look_for_coercion:(fun _ _ _ _ _ -> [])
+               NCicUnifHint.empty_db  [] [] [] bo None
             in
             let metasenv, subst = 
               try 
-                NCicUnification.unify metasenv subst [] infty ty
+                NCicUnification.unify NCicUnifHint.empty_db metasenv subst [] infty ty
               with
               | NCicUnification.Uncertain msg 
               | NCicUnification.UnificationFailure msg