removed some warnings by casting xmlChar to unsigned int and a couple of

* DOCBparser.c HTMLparser.c entities.c parser.c relaxng.c
  xmlschemas.c xpath.c: removed some warnings by casting xmlChar
  to unsigned int and a couple of others.
* xmlschemastypes.c: fixes a segfault on empty hexBinary strings
Daniel
diff --git a/relaxng.c b/relaxng.c
index c17b344..1813b60 100644
--- a/relaxng.c
+++ b/relaxng.c
@@ -2029,13 +2029,13 @@
 	     * Try to find contextual informations to report
 	     */
 	    if (node->type == XML_ELEMENT_NODE) {
-		line = (int) node->content;
+		line = (long) node->content;
 	    } else if ((node->prev != NULL) &&
 		       (node->prev->type == XML_ELEMENT_NODE)) {
-		line = (int) node->prev->content;
+		line = (long) node->prev->content;
 	    } else if ((node->parent != NULL) &&
 		       (node->parent->type == XML_ELEMENT_NODE)) {
-		line = (int) node->parent->content;
+		line = (long) node->parent->content;
 	    }
 	    if ((node->doc != NULL) && (node->doc->URL != NULL))
 		file = node->doc->URL;
@@ -4113,7 +4113,7 @@
 		if ((*tmp)->type == XML_RELAXNG_TEXT) {
 		    res = xmlHashAddEntry2(partitions->triage,
 					   BAD_CAST "#text", NULL,
-					   (void *)(i + 1));
+					   (void *)(long)(i + 1));
 		    if (res != 0)
 			is_determinist = -1;
 		} else if (((*tmp)->type == XML_RELAXNG_ELEMENT) &&
@@ -4121,22 +4121,22 @@
 		    if (((*tmp)->ns == NULL) || ((*tmp)->ns[0] == 0))
 			res = xmlHashAddEntry2(partitions->triage,
 				       (*tmp)->name, NULL,
-				       (void *)(i + 1));
+				       (void *)(long)(i + 1));
 		    else
 			res = xmlHashAddEntry2(partitions->triage,
 				       (*tmp)->name, (*tmp)->ns,
-				       (void *)(i + 1));
+				       (void *)(long)(i + 1));
 		    if (res != 0)
 			is_determinist = -1;
 		} else if ((*tmp)->type == XML_RELAXNG_ELEMENT) {
 		    if (((*tmp)->ns == NULL) || ((*tmp)->ns[0] == 0))
 			res = xmlHashAddEntry2(partitions->triage,
 				       BAD_CAST "#any", NULL,
-				       (void *)(i + 1));
+				       (void *)(long)(i + 1));
 		    else
 			res = xmlHashAddEntry2(partitions->triage,
 				       BAD_CAST "#any", (*tmp)->ns,
-				       (void *)(i + 1));
+				       (void *)(long)(i + 1));
 		    if ((*tmp)->nameClass != NULL)
 			is_determinist = 2;
 		    if (res != 0)