]> matita.cs.unibo.it Git - helm.git/commitdiff
The function exists_a_meta has been modified to capture also
authorAndrea Asperti <andrea.asperti@unibo.it>
Fri, 20 Oct 2006 14:37:25 +0000 (14:37 +0000)
committerAndrea Asperti <andrea.asperti@unibo.it>
Fri, 20 Oct 2006 14:37:25 +0000 (14:37 +0000)
flexible arguments instead of metas.

components/cic_unification/cicUnification.ml

index 6004e73fa98e71497447e5d72357683907ea88c0..8ba0ae917c828e807d85980acdb0a6a560a77718 100644 (file)
@@ -74,7 +74,11 @@ in profiler_toa.HExtlib.profile foo ()
 ;;
 
 let exists_a_meta l = 
-  List.exists (function Cic.Meta _ -> true | _ -> false) l
+  List.exists 
+    (function 
+       | Cic.Meta _  
+       | Cic.Appl (Cic.Meta _::_) -> true
+       | _ -> false) l
 
 let rec deref subst t =
   let snd (_,a,_) = a in
@@ -655,7 +659,9 @@ debug_print (lazy ("restringo Meta n." ^ (string_of_int n) ^ "on variable n." ^
                           C.Appl (C.MutInd _::_) -> 
                             fo_unif_subst test_equality_only 
                               subst context metasenv t1 t2' ugraph         
-                        | _ -> raise (UnificationFailure (lazy "99")))
+                        | _ -> raise 
+                           (UnificationFailure 
+                              (lazy ("not a mutind :"^CicMetaSubst.ppterm subst t2 ))))
                   | _ -> raise exn)))
    | (C.MutCase (_,_,outt1,t1',pl1), C.MutCase (_,_,outt2,t2',pl2))->
        let subst', metasenv',ugraph1 =