summaryrefslogtreecommitdiff
path: root/include/libxml/hash.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/libxml/hash.h')
-rw-r--r--include/libxml/hash.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/include/libxml/hash.h b/include/libxml/hash.h
index b2f7b41..7fe4be7 100644
--- a/include/libxml/hash.h
+++ b/include/libxml/hash.h
@@ -27,6 +27,7 @@ typedef xmlHashTable *xmlHashTablePtr;
#include <libxml/xmlversion.h>
#include <libxml/parser.h>
+#include <libxml/dict.h>
#ifdef __cplusplus
extern "C" {
@@ -47,8 +48,13 @@ extern "C" {
* function pointer without encountering a warning from
* gcc
*
+ * #define XML_CAST_FPTR(fptr) (*(void **)(&fptr))
+ * This macro violated ISO C aliasing rules (gcc4 on s390 broke)
+ * so it is disabled now
*/
-#define XML_CAST_FPTR(fptr) (*(void **)(&fptr))
+
+#define XML_CAST_FPTR(fptr) fptr
+
/*
* function types:
@@ -99,6 +105,9 @@ typedef void (*xmlHashScannerFull)(void *payload, void *data,
*/
XMLPUBFUN xmlHashTablePtr XMLCALL
xmlHashCreate (int size);
+XMLPUBFUN xmlHashTablePtr XMLCALL
+ xmlHashCreateDict(int size,
+ xmlDictPtr dict);
XMLPUBFUN void XMLCALL
xmlHashFree (xmlHashTablePtr table,
xmlHashDeallocator f);