work around Microsoft compiler NaN bug raise reported by Mark Vakoc fixed

* xpath.c: work around Microsoft compiler NaN bug raise reported
  by Mark Vakoc
* xmlschemas.c include/libxml/schemasInternals.h
  include/libxml/xmlerror.h: fixed a recusive expection schemas
  compilation error raised by taihei goi
Daniel
diff --git a/xmlschemas.c b/xmlschemas.c
index f6bc63d..25f9400 100644
--- a/xmlschemas.c
+++ b/xmlschemas.c
@@ -4548,7 +4548,16 @@
                                       typeDecl->base, name);
                         return;
                     }
+                    if (typeDecl->recurse) {
+                        xmlSchemaPErr(ctxt, typeDecl->node,
+                                      XML_SCHEMAP_UNKNOWN_BASE_TYPE,
+				  "Schemas: extension type %s is recursive\n",
+                                      name, NULL);
+                        return;
+		    }
+		    typeDecl->recurse = 1;
                     xmlSchemaTypeFixup(base, ctxt, NULL);
+		    typeDecl->recurse = 0;
                     if (explicitContentType == XML_SCHEMA_CONTENT_EMPTY) {
                         /* 2.1 */
                         typeDecl->contentType = base->contentType;