diff options
Diffstat (limited to 'src/H5overflow.h')
-rw-r--r-- | src/H5overflow.h | 315 |
1 files changed, 315 insertions, 0 deletions
diff --git a/src/H5overflow.h b/src/H5overflow.h index f4064f4..dc4ed2d 100644 --- a/src/H5overflow.h +++ b/src/H5overflow.h @@ -39,6 +39,18 @@ ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) #endif /* src: unsigned dst: int */ +/* src: unsigned, dst: int64_t */ +#if H5_SIZEOF_UNSIGNED < H5_SIZEOF_INT64_T + #define ASSIGN_unsigned_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_UNSIGNED > H5_SIZEOF_INT64_T + #define ASSIGN_unsigned_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_UNSIGNED == H5_SIZEOF_INT64_T */ + #define ASSIGN_unsigned_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#endif /* src: unsigned dst: int64_t */ + /* src: unsigned, dst: uint8_t */ #if H5_SIZEOF_UNSIGNED < H5_SIZEOF_UINT8_T #define ASSIGN_unsigned_TO_uint8_t(dst, dsttype, src, srctype) \ @@ -186,6 +198,18 @@ ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) #endif /* src: int dst: unsigned */ +/* src: int, dst: int64_t */ +#if H5_SIZEOF_INT < H5_SIZEOF_INT64_T + #define ASSIGN_int_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_INT > H5_SIZEOF_INT64_T + #define ASSIGN_int_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_INT == H5_SIZEOF_INT64_T */ + #define ASSIGN_int_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) +#endif /* src: int dst: int64_t */ + /* src: int, dst: uint8_t */ #if H5_SIZEOF_INT < H5_SIZEOF_UINT8_T #define ASSIGN_int_TO_uint8_t(dst, dsttype, src, srctype) \ @@ -319,6 +343,165 @@ #endif /* src: int dst: h5_stat_size_t */ +/* Assignment checks for int64_t */ + +/* src: int64_t, dst: unsigned */ +#if H5_SIZEOF_INT64_T < H5_SIZEOF_UNSIGNED + #define ASSIGN_int64_t_TO_unsigned(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_INT64_T > H5_SIZEOF_UNSIGNED + #define ASSIGN_int64_t_TO_unsigned(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_INT64_T == H5_SIZEOF_UNSIGNED */ + #define ASSIGN_int64_t_TO_unsigned(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#endif /* src: int64_t dst: unsigned */ + +/* src: int64_t, dst: int */ +#if H5_SIZEOF_INT64_T < H5_SIZEOF_INT + #define ASSIGN_int64_t_TO_int(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_INT64_T > H5_SIZEOF_INT + #define ASSIGN_int64_t_TO_int(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_INT64_T == H5_SIZEOF_INT */ + #define ASSIGN_int64_t_TO_int(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) +#endif /* src: int64_t dst: int */ + +/* src: int64_t, dst: uint8_t */ +#if H5_SIZEOF_INT64_T < H5_SIZEOF_UINT8_T + #define ASSIGN_int64_t_TO_uint8_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_INT64_T > H5_SIZEOF_UINT8_T + #define ASSIGN_int64_t_TO_uint8_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_INT64_T == H5_SIZEOF_UINT8_T */ + #define ASSIGN_int64_t_TO_uint8_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#endif /* src: int64_t dst: uint8_t */ + +/* src: int64_t, dst: uint16_t */ +#if H5_SIZEOF_INT64_T < H5_SIZEOF_UINT16_T + #define ASSIGN_int64_t_TO_uint16_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_INT64_T > H5_SIZEOF_UINT16_T + #define ASSIGN_int64_t_TO_uint16_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_INT64_T == H5_SIZEOF_UINT16_T */ + #define ASSIGN_int64_t_TO_uint16_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#endif /* src: int64_t dst: uint16_t */ + +/* src: int64_t, dst: uint32_t */ +#if H5_SIZEOF_INT64_T < H5_SIZEOF_UINT32_T + #define ASSIGN_int64_t_TO_uint32_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_INT64_T > H5_SIZEOF_UINT32_T + #define ASSIGN_int64_t_TO_uint32_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_INT64_T == H5_SIZEOF_UINT32_T */ + #define ASSIGN_int64_t_TO_uint32_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#endif /* src: int64_t dst: uint32_t */ + +/* src: int64_t, dst: uint64_t */ +#if H5_SIZEOF_INT64_T < H5_SIZEOF_UINT64_T + #define ASSIGN_int64_t_TO_uint64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_INT64_T > H5_SIZEOF_UINT64_T + #define ASSIGN_int64_t_TO_uint64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_INT64_T == H5_SIZEOF_UINT64_T */ + #define ASSIGN_int64_t_TO_uint64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#endif /* src: int64_t dst: uint64_t */ + +/* src: int64_t, dst: ptrdiff_t */ +#if H5_SIZEOF_INT64_T < H5_SIZEOF_PTRDIFF_T + #define ASSIGN_int64_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_INT64_T > H5_SIZEOF_PTRDIFF_T + #define ASSIGN_int64_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_INT64_T == H5_SIZEOF_PTRDIFF_T */ + #define ASSIGN_int64_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) +#endif /* src: int64_t dst: ptrdiff_t */ + +/* src: int64_t, dst: size_t */ +#if H5_SIZEOF_INT64_T < H5_SIZEOF_SIZE_T + #define ASSIGN_int64_t_TO_size_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_INT64_T > H5_SIZEOF_SIZE_T + #define ASSIGN_int64_t_TO_size_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_INT64_T == H5_SIZEOF_SIZE_T */ + #define ASSIGN_int64_t_TO_size_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#endif /* src: int64_t dst: size_t */ + +/* src: int64_t, dst: ssize_t */ +#if H5_SIZEOF_INT64_T < H5_SIZEOF_SSIZE_T + #define ASSIGN_int64_t_TO_ssize_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_INT64_T > H5_SIZEOF_SSIZE_T + #define ASSIGN_int64_t_TO_ssize_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_INT64_T == H5_SIZEOF_SSIZE_T */ + #define ASSIGN_int64_t_TO_ssize_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) +#endif /* src: int64_t dst: ssize_t */ + +/* src: int64_t, dst: haddr_t */ +#if H5_SIZEOF_INT64_T < H5_SIZEOF_HADDR_T + #define ASSIGN_int64_t_TO_haddr_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_INT64_T > H5_SIZEOF_HADDR_T + #define ASSIGN_int64_t_TO_haddr_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_INT64_T == H5_SIZEOF_HADDR_T */ + #define ASSIGN_int64_t_TO_haddr_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#endif /* src: int64_t dst: haddr_t */ + +/* src: int64_t, dst: hsize_t */ +#if H5_SIZEOF_INT64_T < H5_SIZEOF_HSIZE_T + #define ASSIGN_int64_t_TO_hsize_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_INT64_T > H5_SIZEOF_HSIZE_T + #define ASSIGN_int64_t_TO_hsize_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_INT64_T == H5_SIZEOF_HSIZE_T */ + #define ASSIGN_int64_t_TO_hsize_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#endif /* src: int64_t dst: hsize_t */ + +/* src: int64_t, dst: hssize_t */ +#if H5_SIZEOF_INT64_T < H5_SIZEOF_HSSIZE_T + #define ASSIGN_int64_t_TO_hssize_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_INT64_T > H5_SIZEOF_HSSIZE_T + #define ASSIGN_int64_t_TO_hssize_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_INT64_T == H5_SIZEOF_HSSIZE_T */ + #define ASSIGN_int64_t_TO_hssize_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) +#endif /* src: int64_t dst: hssize_t */ + +/* src: int64_t, dst: h5_stat_size_t */ +#if H5_SIZEOF_INT64_T < H5_SIZEOF_H5_STAT_SIZE_T + #define ASSIGN_int64_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_INT64_T > H5_SIZEOF_H5_STAT_SIZE_T + #define ASSIGN_int64_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_INT64_T == H5_SIZEOF_H5_STAT_SIZE_T */ + #define ASSIGN_int64_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype) +#endif /* src: int64_t dst: h5_stat_size_t */ + + /* Assignment checks for uint8_t */ /* src: uint8_t, dst: unsigned */ @@ -345,6 +528,18 @@ ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) #endif /* src: uint8_t dst: int */ +/* src: uint8_t, dst: int64_t */ +#if H5_SIZEOF_UINT8_T < H5_SIZEOF_INT64_T + #define ASSIGN_uint8_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_UINT8_T > H5_SIZEOF_INT64_T + #define ASSIGN_uint8_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_UINT8_T == H5_SIZEOF_INT64_T */ + #define ASSIGN_uint8_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#endif /* src: uint8_t dst: int64_t */ + /* src: uint8_t, dst: uint16_t */ #if H5_SIZEOF_UINT8_T < H5_SIZEOF_UINT16_T #define ASSIGN_uint8_t_TO_uint16_t(dst, dsttype, src, srctype) \ @@ -492,6 +687,18 @@ ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) #endif /* src: uint16_t dst: int */ +/* src: uint16_t, dst: int64_t */ +#if H5_SIZEOF_UINT16_T < H5_SIZEOF_INT64_T + #define ASSIGN_uint16_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_UINT16_T > H5_SIZEOF_INT64_T + #define ASSIGN_uint16_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_UINT16_T == H5_SIZEOF_INT64_T */ + #define ASSIGN_uint16_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#endif /* src: uint16_t dst: int64_t */ + /* src: uint16_t, dst: uint8_t */ #if H5_SIZEOF_UINT16_T < H5_SIZEOF_UINT8_T #define ASSIGN_uint16_t_TO_uint8_t(dst, dsttype, src, srctype) \ @@ -639,6 +846,18 @@ ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) #endif /* src: uint32_t dst: int */ +/* src: uint32_t, dst: int64_t */ +#if H5_SIZEOF_UINT32_T < H5_SIZEOF_INT64_T + #define ASSIGN_uint32_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_UINT32_T > H5_SIZEOF_INT64_T + #define ASSIGN_uint32_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_UINT32_T == H5_SIZEOF_INT64_T */ + #define ASSIGN_uint32_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#endif /* src: uint32_t dst: int64_t */ + /* src: uint32_t, dst: uint8_t */ #if H5_SIZEOF_UINT32_T < H5_SIZEOF_UINT8_T #define ASSIGN_uint32_t_TO_uint8_t(dst, dsttype, src, srctype) \ @@ -786,6 +1005,18 @@ ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) #endif /* src: uint64_t dst: int */ +/* src: uint64_t, dst: int64_t */ +#if H5_SIZEOF_UINT64_T < H5_SIZEOF_INT64_T + #define ASSIGN_uint64_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_UINT64_T > H5_SIZEOF_INT64_T + #define ASSIGN_uint64_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_UINT64_T == H5_SIZEOF_INT64_T */ + #define ASSIGN_uint64_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#endif /* src: uint64_t dst: int64_t */ + /* src: uint64_t, dst: uint8_t */ #if H5_SIZEOF_UINT64_T < H5_SIZEOF_UINT8_T #define ASSIGN_uint64_t_TO_uint8_t(dst, dsttype, src, srctype) \ @@ -933,6 +1164,18 @@ ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) #endif /* src: ptrdiff_t dst: int */ +/* src: ptrdiff_t, dst: int64_t */ +#if H5_SIZEOF_PTRDIFF_T < H5_SIZEOF_INT64_T + #define ASSIGN_ptrdiff_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_PTRDIFF_T > H5_SIZEOF_INT64_T + #define ASSIGN_ptrdiff_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_PTRDIFF_T == H5_SIZEOF_INT64_T */ + #define ASSIGN_ptrdiff_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) +#endif /* src: ptrdiff_t dst: int64_t */ + /* src: ptrdiff_t, dst: uint8_t */ #if H5_SIZEOF_PTRDIFF_T < H5_SIZEOF_UINT8_T #define ASSIGN_ptrdiff_t_TO_uint8_t(dst, dsttype, src, srctype) \ @@ -1080,6 +1323,18 @@ ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) #endif /* src: size_t dst: int */ +/* src: size_t, dst: int64_t */ +#if H5_SIZEOF_SIZE_T < H5_SIZEOF_INT64_T + #define ASSIGN_size_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_SIZE_T > H5_SIZEOF_INT64_T + #define ASSIGN_size_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_SIZE_T == H5_SIZEOF_INT64_T */ + #define ASSIGN_size_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#endif /* src: size_t dst: int64_t */ + /* src: size_t, dst: uint8_t */ #if H5_SIZEOF_SIZE_T < H5_SIZEOF_UINT8_T #define ASSIGN_size_t_TO_uint8_t(dst, dsttype, src, srctype) \ @@ -1227,6 +1482,18 @@ ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) #endif /* src: ssize_t dst: int */ +/* src: ssize_t, dst: int64_t */ +#if H5_SIZEOF_SSIZE_T < H5_SIZEOF_INT64_T + #define ASSIGN_ssize_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_SSIZE_T > H5_SIZEOF_INT64_T + #define ASSIGN_ssize_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_SSIZE_T == H5_SIZEOF_INT64_T */ + #define ASSIGN_ssize_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) +#endif /* src: ssize_t dst: int64_t */ + /* src: ssize_t, dst: uint8_t */ #if H5_SIZEOF_SSIZE_T < H5_SIZEOF_UINT8_T #define ASSIGN_ssize_t_TO_uint8_t(dst, dsttype, src, srctype) \ @@ -1374,6 +1641,18 @@ ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) #endif /* src: haddr_t dst: int */ +/* src: haddr_t, dst: int64_t */ +#if H5_SIZEOF_HADDR_T < H5_SIZEOF_INT64_T + #define ASSIGN_haddr_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_HADDR_T > H5_SIZEOF_INT64_T + #define ASSIGN_haddr_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_HADDR_T == H5_SIZEOF_INT64_T */ + #define ASSIGN_haddr_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#endif /* src: haddr_t dst: int64_t */ + /* src: haddr_t, dst: uint8_t */ #if H5_SIZEOF_HADDR_T < H5_SIZEOF_UINT8_T #define ASSIGN_haddr_t_TO_uint8_t(dst, dsttype, src, srctype) \ @@ -1521,6 +1800,18 @@ ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) #endif /* src: hsize_t dst: int */ +/* src: hsize_t, dst: int64_t */ +#if H5_SIZEOF_HSIZE_T < H5_SIZEOF_INT64_T + #define ASSIGN_hsize_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_HSIZE_T > H5_SIZEOF_INT64_T + #define ASSIGN_hsize_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_HSIZE_T == H5_SIZEOF_INT64_T */ + #define ASSIGN_hsize_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#endif /* src: hsize_t dst: int64_t */ + /* src: hsize_t, dst: uint8_t */ #if H5_SIZEOF_HSIZE_T < H5_SIZEOF_UINT8_T #define ASSIGN_hsize_t_TO_uint8_t(dst, dsttype, src, srctype) \ @@ -1668,6 +1959,18 @@ ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) #endif /* src: hssize_t dst: int */ +/* src: hssize_t, dst: int64_t */ +#if H5_SIZEOF_HSSIZE_T < H5_SIZEOF_INT64_T + #define ASSIGN_hssize_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_HSSIZE_T > H5_SIZEOF_INT64_T + #define ASSIGN_hssize_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_HSSIZE_T == H5_SIZEOF_INT64_T */ + #define ASSIGN_hssize_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype) +#endif /* src: hssize_t dst: int64_t */ + /* src: hssize_t, dst: uint8_t */ #if H5_SIZEOF_HSSIZE_T < H5_SIZEOF_UINT8_T #define ASSIGN_hssize_t_TO_uint8_t(dst, dsttype, src, srctype) \ @@ -1815,6 +2118,18 @@ ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) #endif /* src: h5_stat_size_t dst: int */ +/* src: h5_stat_size_t, dst: int64_t */ +#if H5_SIZEOF_H5_STAT_SIZE_T < H5_SIZEOF_INT64_T + #define ASSIGN_h5_stat_size_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#elif H5_SIZEOF_H5_STAT_SIZE_T > H5_SIZEOF_INT64_T + #define ASSIGN_h5_stat_size_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype) +#else /* H5_SIZEOF_H5_STAT_SIZE_T == H5_SIZEOF_INT64_T */ + #define ASSIGN_h5_stat_size_t_TO_int64_t(dst, dsttype, src, srctype) \ + ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype) +#endif /* src: h5_stat_size_t dst: int64_t */ + /* src: h5_stat_size_t, dst: uint8_t */ #if H5_SIZEOF_H5_STAT_SIZE_T < H5_SIZEOF_UINT8_T #define ASSIGN_h5_stat_size_t_TO_uint8_t(dst, dsttype, src, srctype) \ |