From dd969f1eadfd2cd500f3f44415b85cfea7216794 Mon Sep 17 00:00:00 2001 From: Quincey Koziol Date: Sat, 8 Nov 2003 09:21:49 -0500 Subject: [svn-r7827] Purpose: Bug fix Description: Make --disable-hsizet work properly again by fixing a couple of tests and correcting the definition of SSIZET_MAX. Platforms tested: FreeBSD 4.9 (sleipnir) h5committest not used, as it doesn't test this configuration. --- src/H5private.h | 12 ++++++------ test/istore.c | 4 ++++ test/tfile.c | 8 ++++++++ 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/src/H5private.h b/src/H5private.h index 96a4703..672bba6 100644 --- a/src/H5private.h +++ b/src/H5private.h @@ -437,15 +437,15 @@ # define ULLONG_MAX ((unsigned long_long)((long_long)(-1))) #endif #ifndef SIZET_MAX -# define SIZET_MAX ((hsize_t)(size_t)(ssize_t)(-1)) -# define SSIZET_MAX ((hsize_t)(ssize_t)((size_t)1<<(8*sizeof(ssize_t)-1))) +# define SIZET_MAX ((size_t)(ssize_t)(-1)) +# define SSIZET_MAX ((ssize_t)(((size_t)1<<(8*sizeof(ssize_t)-1))-1)) #endif #ifdef H5_HAVE_LARGE_HSIZET -#define HSIZET_MAX ULLONG_MAX -#define HSSIZET_MAX LLONG_MAX +#define HSIZET_MAX ((hsize_t)ULLONG_MAX) +#define HSSIZET_MAX ((hssize_t)LLONG_MAX) #else /* H5_HAVE_LARGE_HSIZET */ -#define HSIZET_MAX SIZET_MAX -#define HSSIZET_MAX SSIZET_MAX +#define HSIZET_MAX ((hsize_t)SIZET_MAX) +#define HSSIZET_MAX ((hssize_t)SSIZET_MAX) #endif /* H5_HAVE_LARGE_HSIZET */ #define HSSIZET_MIN (~(HSSIZET_MAX)) diff --git a/test/istore.c b/test/istore.c index 3e13523..b1c2453 100644 --- a/test/istore.c +++ b/test/istore.c @@ -47,7 +47,11 @@ const char *FILENAME[] = { #define TEST_DATATYPE H5T_NATIVE_UCHAR #define TEST_CHUNK_SIZE 50 +#ifdef H5_HAVE_LARGE_HSIZET #define TEST_SPARSE_SIZE 1000000 +#else /* H5_HAVE_LARGE_HSIZET */ +#define TEST_SPARSE_SIZE 1200 +#endif /* H5_HAVE_LARGE_HSIZET */ hsize_t chunk_dims[H5O_LAYOUT_NDIMS]; hssize_t zero[H5O_LAYOUT_NDIMS]; diff --git a/test/tfile.c b/test/tfile.c index d418b0b..63815d6 100644 --- a/test/tfile.c +++ b/test/tfile.c @@ -1195,7 +1195,11 @@ test_file_freespace(void) /* Check that there is the right amount of free space in the file */ free_space = H5Fget_freespace(file); CHECK(free_space, FAIL, "H5Fget_freespace"); +#ifdef H5_HAVE_LARGE_HSIZET VERIFY(free_space, 168, "H5Fget_freespace"); +#else /* H5_HAVE_LARGE_HSIZET */ + VERIFY(free_space, 76, "H5Fget_freespace"); +#endif /* H5_HAVE_LARGE_HSIZET */ /* Delete datasets in file */ for(u=0; u<10; u++) { @@ -1207,7 +1211,11 @@ test_file_freespace(void) /* Check that there is the right amount of free space in the file */ free_space = H5Fget_freespace(file); CHECK(free_space, FAIL, "H5Fget_freespace"); +#ifdef H5_HAVE_LARGE_HSIZET VERIFY(free_space, 3584, "H5Fget_freespace"); +#else /* H5_HAVE_LARGE_HSIZET */ + VERIFY(free_space, 3428, "H5Fget_freespace"); +#endif /* H5_HAVE_LARGE_HSIZET */ /* Close file */ ret = H5Fclose(file); -- cgit v0.12