summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Laird <jlaird@hdfgroup.org>2006-10-02 17:08:28 (GMT)
committerJames Laird <jlaird@hdfgroup.org>2006-10-02 17:08:28 (GMT)
commit79bc4a9b03a86fa58edc0abf8e83fce6e68bab38 (patch)
tree25a0e2f751cbced605cbbecae68752515bb99b72
parent22a3d4b0c9d7fede5be19f736b9f9f4dfdb0aa0e (diff)
downloadhdf5-79bc4a9b03a86fa58edc0abf8e83fce6e68bab38.zip
hdf5-79bc4a9b03a86fa58edc0abf8e83fce6e68bab38.tar.gz
hdf5-79bc4a9b03a86fa58edc0abf8e83fce6e68bab38.tar.bz2
[svn-r12703] Using int64_t in H5Lpublic.h caused errors on Windows, where int64_t is only
defined in H5private.h. Moved definition of int64_t from H5private.h to H5public.h as a temporary solution. Tested on heping and Windows (windows also needed H5Gdense.c and H5Gbtree2.c to be added to hdf5 project).
-rw-r--r--src/H5private.h17
-rw-r--r--src/H5public.h20
2 files changed, 21 insertions, 16 deletions
diff --git a/src/H5private.h b/src/H5private.h
index 254c2eb..3f523e1 100644
--- a/src/H5private.h
+++ b/src/H5private.h
@@ -424,22 +424,7 @@
# error "nothing appropriate for uint32_t"
#endif
-#if H5_SIZEOF_INT64_T>=8
-#elif H5_SIZEOF_INT>=8
- typedef int int64_t;
-# undef H5_SIZEOF_INT64_T
-# define H5_SIZEOF_INT64_T H5_SIZEOF_INT
-#elif H5_SIZEOF_LONG>=8
- typedef long int64_t;
-# undef H5_SIZEOF_INT64_T
-# define H5_SIZEOF_INT64_T H5_SIZEOF_LONG
-#elif H5_SIZEOF_LONG_LONG>=8
- typedef long_long int64_t;
-# undef H5_SIZEOF_INT64_T
-# define H5_SIZEOF_INT64_T H5_SIZEOF_LONG_LONG
-#else
-# error "nothing appropriate for int64_t"
-#endif
+/* Definition of int64_t was moved to H5public.h */
#if H5_SIZEOF_UINT64_T>=8
#elif H5_SIZEOF_INT>=8
diff --git a/src/H5public.h b/src/H5public.h
index 724539b..e7f4d32 100644
--- a/src/H5public.h
+++ b/src/H5public.h
@@ -207,6 +207,26 @@ typedef ssize_t hssize_t;
#endif
#define HADDR_MAX (HADDR_UNDEF-1)
+/* int64_t type is used for creation order field for links. It may be
+ * defined in Posix.1g, otherwise it is defined here.
+ */
+#if H5_SIZEOF_INT64_T>=8
+#elif H5_SIZEOF_INT>=8
+ typedef int int64_t;
+# undef H5_SIZEOF_INT64_T
+# define H5_SIZEOF_INT64_T H5_SIZEOF_INT
+#elif H5_SIZEOF_LONG>=8
+ typedef long int64_t;
+# undef H5_SIZEOF_INT64_T
+# define H5_SIZEOF_INT64_T H5_SIZEOF_LONG
+#elif H5_SIZEOF_LONG_LONG>=8
+ typedef long_long int64_t;
+# undef H5_SIZEOF_INT64_T
+# define H5_SIZEOF_INT64_T H5_SIZEOF_LONG_LONG
+#else
+# error "nothing appropriate for int64_t"
+#endif
+
/* Common iteration orders */
typedef enum {
H5_ITER_INC, /* Increasing order */