X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Flibpspp%2Fhash-functions.c;h=96ff282c85d7fc9684672cd840a5ea1cca33afe8;hb=81579d9e9f994fb2908f50af41c3eb033d216e58;hp=a72ee06e185e8171efe4f50270215af4ac340943;hpb=f550aee00a62fe1d8baf62d83cd7efef6cc2ee92;p=pspp-builds.git
diff --git a/src/libpspp/hash-functions.c b/src/libpspp/hash-functions.c
index a72ee06e..96ff282c 100644
--- a/src/libpspp/hash-functions.c
+++ b/src/libpspp/hash-functions.c
@@ -1,5 +1,5 @@
/* PSPP - a program for statistical analysis.
- Copyright (C) 1997-9, 2000, 2008, 2009, 2010 Free Software Foundation, Inc.
+ Copyright (C) 1997-9, 2000, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -15,7 +15,9 @@
along with this program. If not, see . */
#include
-#include
+
+#include "libpspp/hash-functions.h"
+
#include
#include
#include
@@ -157,20 +159,21 @@ hash_int (int x, unsigned int basis)
unsigned int
hash_double (double d, unsigned int basis)
{
-#if SIZEOF_DOUBLE == 8
- uint32_t tmp[2];
- uint32_t a, b, c;
+ if (sizeof (double) == 8)
+ {
+ uint32_t tmp[2];
+ uint32_t a, b, c;
- a = b = c = 0xdeadbeef + 8 + basis;
+ a = b = c = 0xdeadbeef + 8 + basis;
- memcpy (tmp, &d, 8);
- a += tmp[0];
- b += tmp[1];
- HASH_FINAL (a, b, c);
- return c;
-#else /* SIZEOF_DOUBLE != 8 */
- return hash_bytes (&d, sizeof d, basis);
-#endif /* SIZEOF_DOUBLE != 8 */
+ memcpy (tmp, &d, 8);
+ a += tmp[0];
+ b += tmp[1];
+ HASH_FINAL (a, b, c);
+ return c;
+ }
+ else
+ return hash_bytes (&d, sizeof d, basis);
}
/* Returns a hash value for pointer P, starting from BASIS. */