factoring of more error handling code, serious size reduction and more

* parser.c include/libxml/xmlerror.h: factoring of more
  error handling code, serious size reduction and more lisibility
  of the resulting code.
* parserInternals.c parser.c include/libxml/parserInternals.h
  include/libxml/parser.h: changing the way VC:Proper Group/PE Nesting
  checks are done, use a counter for entities. Entities where freed and
  reallocated at the same address failing the check.
* tree.c: avoid a warning
* result/valid/* result/VC/*: this slightly changes some validation
  error messages.
Daniel
diff --git a/tree.c b/tree.c
index b3eea54..40764b4 100644
--- a/tree.c
+++ b/tree.c
@@ -5303,8 +5303,8 @@
  * Returns 1 if true, 0 if false and -1 in case of error.
  */
 static int
-xmlNsInScope(xmlDocPtr doc, xmlNodePtr node, xmlNodePtr ancestor,
-             const xmlChar * prefix)
+xmlNsInScope(xmlDocPtr doc ATTRIBUTE_UNUSED, xmlNodePtr node,
+             xmlNodePtr ancestor, const xmlChar * prefix)
 {
     xmlNsPtr tst;