Added compression on saving, Daniel.
diff --git a/include/libxml/parser.h b/include/libxml/parser.h
index a25e70a..46c5a19 100644
--- a/include/libxml/parser.h
+++ b/include/libxml/parser.h
@@ -122,8 +122,8 @@
  * Global variables: just the SAX interface tables we are looking for full
  *      reentrancy of the code !
  */
-xmlSAXLocator xmlDefaultSAXLocator;
-xmlSAXHandler xmlDefaultSAXHandler;
+extern xmlSAXLocator xmlDefaultSAXLocator;
+extern xmlSAXHandler xmlDefaultSAXHandler;
 
 /*
  * Interfaces
diff --git a/include/libxml/tree.h b/include/libxml/tree.h
index 7a48a9b..0b27014 100644
--- a/include/libxml/tree.h
+++ b/include/libxml/tree.h
@@ -166,11 +166,15 @@
 extern xmlNodePtr xmlNewChild(xmlNodePtr parent, xmlNsPtr ns,
                               const CHAR *name, CHAR *content);
 
-extern void xmlDocDumpMemory(xmlDocPtr cur, CHAR**mem, int *size);
-extern void xmlDocDump(FILE *f, xmlDocPtr doc);
 extern void xmlBufferWriteCHAR(const CHAR *string);
 extern void xmlBufferWriteChar(const char *string);
 
+extern void xmlDocDumpMemory(xmlDocPtr cur, CHAR**mem, int *size);
+extern void xmlDocDump(FILE *f, xmlDocPtr doc);
+int xmlSaveFile(const char *filename, xmlDocPtr cur);
+
+extern int  xmlGetCompressMode(void);
+extern void xmlSetCompressMode(int mode);
 
 #ifdef __cplusplus
 }