This file needs to get applied to jabberd14 1.6.0 if you want to compile it
with a pre-3.0 version of gcc.

Please unpack the distribution file of jabberd14 1.6.0, go to its root
directory, move this file to the same directory and apply this file using
the following command:

patch -p0 < jabberd14-1.6.0-older-compilers.diff

Afterwards continue with the normal build process (i.e. run the configure
script, make, and make install).

Index: jabberd/lib/xmlnode.c
===================================================================
--- jabberd/lib/xmlnode.c	(Revision 1425)
+++ jabberd/lib/xmlnode.c	(Arbeitskopie)
@@ -1576,6 +1576,7 @@
  * @return pointer to the created string (uses the same memory ::pool as the xmlnode), or NULL if it was unsuccessfull
  */
 char *xmlnode2str(xmlnode node) {
+    spool s = NULL;
     ns_list_item first = NULL;
     ns_list_item last = NULL;
 
@@ -1583,7 +1584,7 @@
     xmlnode_update_decl_list(xmlnode_pool(node), &first, &last, NULL, NS_SERVER);
     xmlnode_update_decl_list(xmlnode_pool(node), &first, &last, "stream", NS_STREAM);
     
-    spool s = spool_new(xmlnode_pool(node));
+    s = spool_new(xmlnode_pool(node));
     _xmlnode_serialize(s, node, first, last, 0);
     return spool_print(s);
 }
@@ -1616,11 +1617,13 @@
  * @return serialized XML tree
  */
 char *xmlnode_serialize_string(xmlnode node, ns_list_item nslist_first, ns_list_item nslist_last, int stream_type) {
+    spool s = NULL;
+
     /* sanity check */
     if (node == NULL)
 	return NULL;
 
-    spool s = spool_new(xmlnode_pool(node));
+    s = spool_new(xmlnode_pool(node));
     _xmlnode_serialize(s, node, nslist_first, nslist_last, stream_type);
     return spool_print(s);
 }

