some warning removal on Igor's patch seems I messed up with #106788 fix

* uri.c parser.c: some warning removal on Igor's patch
* tree.c: seems I messed up with #106788 fix
* python/libxml.c: fixed some base problems when Python provides
  the resolver.
* relaxng.c: fixed the interleave algorithm
  found 373 test schemas: 364 success 9 failures
  found 529 test instances: 525 success 4 failures
  the resulting failures are bug in the algorithm from 7.3 and
  lack of support for params
Daniel
diff --git a/uri.c b/uri.c
index 0e3d0e7..ffdad9f 100644
--- a/uri.c
+++ b/uri.c
@@ -1985,15 +1985,17 @@
 xmlChar*
 xmlCanonicPath(const xmlChar *path)
 {
+#if defined(_WIN32) && !defined(__CYGWIN__)    
     int len = 0;
     int i = 0;
-    xmlChar *ret;
     xmlChar *p = NULL;
+#endif
+    xmlChar *ret;
     xmlURIPtr uri;
 
     if (path == NULL)
 	return(NULL);
-    if ((uri = xmlParseURI(path)) != NULL) {
+    if ((uri = xmlParseURI((const char *) path)) != NULL) {
 	xmlFreeURI(uri);
 	return xmlStrdup(path);
     }
@@ -2018,7 +2020,7 @@
 	p++;
     }
 #else
-    uri->path = xmlStrdup(path);
+    uri->path = (char *) xmlStrdup((const char *) path);
 #endif
     
     ret = xmlSaveUri(uri);