--- a/inifiles.ml
+++ b/inifiles.ml
@@ -50,7 +50,7 @@
 struct
   type t = string
   let compare (x:t) (y:t) = 
-    String.compare (String.lowercase x) (String.lowercase y)
+    String.compare (String.lowercase_ascii x) (String.lowercase_ascii y)
 end
 
 module Strset = Set.Make(Ordstr)
@@ -257,7 +257,7 @@
        func
        initial
        (List.rev_map
-	  (new inifile)
+	  (fun x -> new inifile x)
 	  (List.filter
 	     check_file
 	     (List.rev_map