revamped the elfgcchack.h format to cope with gcc4 change of aliasing

* doc/apibuild.py doc/elfgcchack.xsl: revamped the elfgcchack.h
  format to cope with gcc4 change of aliasing allowed scopes, had
  to add extra informations to doc/libxml2-api.xml to separate
  the header from the c module source.
* *.c: updated all c library files to add a #define bottom_xxx
  and reimport elfgcchack.h thereafter, and a bit of cleanups.
* doc//* testapi.c: regenerated when rebuilding the API
Daniel
diff --git a/pattern.c b/pattern.c
index ee3bcbd..4e31c3a 100644
--- a/pattern.c
+++ b/pattern.c
@@ -2075,4 +2075,6 @@
 
 }
 
+#define bottom_pattern
+#include "elfgcchack.h"
 #endif /* LIBXML_PATTERN_ENABLED */