+/* The warn_unused_result attribute appeared first in gcc-3.4.0 */
+# ifndef __attribute__
+# if __GNUC__ < 3 || (__GNUC__ == 3 && __GNUC_MINOR__ < 4)
+# define __attribute__(x)
+# endif
+# endif
+
+# ifndef ATTRIBUTE_WUR
+# define ATTRIBUTE_WUR __attribute__ ((__warn_unused_result__))
+# endif
+
+typedef size_t (*Hash_hasher) (const void *, size_t);