MISR Toolkit  1.5.1
H5overflow.h
Go to the documentation of this file.
1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
2  * Copyright by The HDF Group. *
3  * Copyright by the Board of Trustees of the University of Illinois. *
4  * All rights reserved. *
5  * *
6  * This file is part of HDF5. The full HDF5 copyright notice, including *
7  * terms governing use, modification, and redistribution, is contained in *
8  * the COPYING file, which can be found at the root of the source code *
9  * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
10  * If you do not have access to either file, you may request a copy from *
11  * help@hdfgroup.org. *
12  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13 
14 /* Generated automatically by bin/make_overflow -- do not edit */
15 /* Add new types to H5overflow.txt file */
16 
17 
18 #ifndef _H5overflow_H
19 #define _H5overflow_H
20 
21 
22 /* Each type in this file is tested for assignment to the other types,
23  * and range checks are defined for bad assignments at run-time.
24  */
25 
26 /* Assignment checks for unsigned */
27 
28 /* src: unsigned, dst: int */
29 #if H5_SIZEOF_UNSIGNED < H5_SIZEOF_INT
30  #define ASSIGN_unsigned_TO_int(dst, dsttype, src, srctype) \
31  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
32 #elif H5_SIZEOF_UNSIGNED > H5_SIZEOF_INT
33  #define ASSIGN_unsigned_TO_int(dst, dsttype, src, srctype) \
34  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
35 #else /* H5_SIZEOF_UNSIGNED == H5_SIZEOF_INT */
36  #define ASSIGN_unsigned_TO_int(dst, dsttype, src, srctype) \
37  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
38 #endif /* src: unsigned dst: int */
39 
40 /* src: unsigned, dst: uint8_t */
41 #if H5_SIZEOF_UNSIGNED < H5_SIZEOF_UINT8_T
42  #define ASSIGN_unsigned_TO_uint8_t(dst, dsttype, src, srctype) \
43  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
44 #elif H5_SIZEOF_UNSIGNED > H5_SIZEOF_UINT8_T
45  #define ASSIGN_unsigned_TO_uint8_t(dst, dsttype, src, srctype) \
46  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
47 #else /* H5_SIZEOF_UNSIGNED == H5_SIZEOF_UINT8_T */
48  #define ASSIGN_unsigned_TO_uint8_t(dst, dsttype, src, srctype) \
49  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
50 #endif /* src: unsigned dst: uint8_t */
51 
52 /* src: unsigned, dst: uint16_t */
53 #if H5_SIZEOF_UNSIGNED < H5_SIZEOF_UINT16_T
54  #define ASSIGN_unsigned_TO_uint16_t(dst, dsttype, src, srctype) \
55  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
56 #elif H5_SIZEOF_UNSIGNED > H5_SIZEOF_UINT16_T
57  #define ASSIGN_unsigned_TO_uint16_t(dst, dsttype, src, srctype) \
58  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
59 #else /* H5_SIZEOF_UNSIGNED == H5_SIZEOF_UINT16_T */
60  #define ASSIGN_unsigned_TO_uint16_t(dst, dsttype, src, srctype) \
61  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
62 #endif /* src: unsigned dst: uint16_t */
63 
64 /* src: unsigned, dst: uint32_t */
65 #if H5_SIZEOF_UNSIGNED < H5_SIZEOF_UINT32_T
66  #define ASSIGN_unsigned_TO_uint32_t(dst, dsttype, src, srctype) \
67  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
68 #elif H5_SIZEOF_UNSIGNED > H5_SIZEOF_UINT32_T
69  #define ASSIGN_unsigned_TO_uint32_t(dst, dsttype, src, srctype) \
70  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
71 #else /* H5_SIZEOF_UNSIGNED == H5_SIZEOF_UINT32_T */
72  #define ASSIGN_unsigned_TO_uint32_t(dst, dsttype, src, srctype) \
73  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
74 #endif /* src: unsigned dst: uint32_t */
75 
76 /* src: unsigned, dst: uint64_t */
77 #if H5_SIZEOF_UNSIGNED < H5_SIZEOF_UINT64_T
78  #define ASSIGN_unsigned_TO_uint64_t(dst, dsttype, src, srctype) \
79  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
80 #elif H5_SIZEOF_UNSIGNED > H5_SIZEOF_UINT64_T
81  #define ASSIGN_unsigned_TO_uint64_t(dst, dsttype, src, srctype) \
82  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
83 #else /* H5_SIZEOF_UNSIGNED == H5_SIZEOF_UINT64_T */
84  #define ASSIGN_unsigned_TO_uint64_t(dst, dsttype, src, srctype) \
85  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
86 #endif /* src: unsigned dst: uint64_t */
87 
88 /* src: unsigned, dst: ptrdiff_t */
89 #if H5_SIZEOF_UNSIGNED < H5_SIZEOF_PTRDIFF_T
90  #define ASSIGN_unsigned_TO_ptrdiff_t(dst, dsttype, src, srctype) \
91  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
92 #elif H5_SIZEOF_UNSIGNED > H5_SIZEOF_PTRDIFF_T
93  #define ASSIGN_unsigned_TO_ptrdiff_t(dst, dsttype, src, srctype) \
94  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
95 #else /* H5_SIZEOF_UNSIGNED == H5_SIZEOF_PTRDIFF_T */
96  #define ASSIGN_unsigned_TO_ptrdiff_t(dst, dsttype, src, srctype) \
97  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
98 #endif /* src: unsigned dst: ptrdiff_t */
99 
100 /* src: unsigned, dst: size_t */
101 #if H5_SIZEOF_UNSIGNED < H5_SIZEOF_SIZE_T
102  #define ASSIGN_unsigned_TO_size_t(dst, dsttype, src, srctype) \
103  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
104 #elif H5_SIZEOF_UNSIGNED > H5_SIZEOF_SIZE_T
105  #define ASSIGN_unsigned_TO_size_t(dst, dsttype, src, srctype) \
106  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
107 #else /* H5_SIZEOF_UNSIGNED == H5_SIZEOF_SIZE_T */
108  #define ASSIGN_unsigned_TO_size_t(dst, dsttype, src, srctype) \
109  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
110 #endif /* src: unsigned dst: size_t */
111 
112 /* src: unsigned, dst: ssize_t */
113 #if H5_SIZEOF_UNSIGNED < H5_SIZEOF_SSIZE_T
114  #define ASSIGN_unsigned_TO_ssize_t(dst, dsttype, src, srctype) \
115  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
116 #elif H5_SIZEOF_UNSIGNED > H5_SIZEOF_SSIZE_T
117  #define ASSIGN_unsigned_TO_ssize_t(dst, dsttype, src, srctype) \
118  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
119 #else /* H5_SIZEOF_UNSIGNED == H5_SIZEOF_SSIZE_T */
120  #define ASSIGN_unsigned_TO_ssize_t(dst, dsttype, src, srctype) \
121  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
122 #endif /* src: unsigned dst: ssize_t */
123 
124 /* src: unsigned, dst: haddr_t */
125 #if H5_SIZEOF_UNSIGNED < H5_SIZEOF_HADDR_T
126  #define ASSIGN_unsigned_TO_haddr_t(dst, dsttype, src, srctype) \
127  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
128 #elif H5_SIZEOF_UNSIGNED > H5_SIZEOF_HADDR_T
129  #define ASSIGN_unsigned_TO_haddr_t(dst, dsttype, src, srctype) \
130  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
131 #else /* H5_SIZEOF_UNSIGNED == H5_SIZEOF_HADDR_T */
132  #define ASSIGN_unsigned_TO_haddr_t(dst, dsttype, src, srctype) \
133  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
134 #endif /* src: unsigned dst: haddr_t */
135 
136 /* src: unsigned, dst: hsize_t */
137 #if H5_SIZEOF_UNSIGNED < H5_SIZEOF_HSIZE_T
138  #define ASSIGN_unsigned_TO_hsize_t(dst, dsttype, src, srctype) \
139  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
140 #elif H5_SIZEOF_UNSIGNED > H5_SIZEOF_HSIZE_T
141  #define ASSIGN_unsigned_TO_hsize_t(dst, dsttype, src, srctype) \
142  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
143 #else /* H5_SIZEOF_UNSIGNED == H5_SIZEOF_HSIZE_T */
144  #define ASSIGN_unsigned_TO_hsize_t(dst, dsttype, src, srctype) \
145  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
146 #endif /* src: unsigned dst: hsize_t */
147 
148 /* src: unsigned, dst: hssize_t */
149 #if H5_SIZEOF_UNSIGNED < H5_SIZEOF_HSSIZE_T
150  #define ASSIGN_unsigned_TO_hssize_t(dst, dsttype, src, srctype) \
151  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
152 #elif H5_SIZEOF_UNSIGNED > H5_SIZEOF_HSSIZE_T
153  #define ASSIGN_unsigned_TO_hssize_t(dst, dsttype, src, srctype) \
154  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
155 #else /* H5_SIZEOF_UNSIGNED == H5_SIZEOF_HSSIZE_T */
156  #define ASSIGN_unsigned_TO_hssize_t(dst, dsttype, src, srctype) \
157  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
158 #endif /* src: unsigned dst: hssize_t */
159 
160 /* src: unsigned, dst: h5_stat_size_t */
161 #if H5_SIZEOF_UNSIGNED < H5_SIZEOF_H5_STAT_SIZE_T
162  #define ASSIGN_unsigned_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
163  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
164 #elif H5_SIZEOF_UNSIGNED > H5_SIZEOF_H5_STAT_SIZE_T
165  #define ASSIGN_unsigned_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
166  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
167 #else /* H5_SIZEOF_UNSIGNED == H5_SIZEOF_H5_STAT_SIZE_T */
168  #define ASSIGN_unsigned_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
169  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
170 #endif /* src: unsigned dst: h5_stat_size_t */
171 
172 
173 /* Assignment checks for int */
174 
175 /* src: int, dst: unsigned */
176 #if H5_SIZEOF_INT < H5_SIZEOF_UNSIGNED
177  #define ASSIGN_int_TO_unsigned(dst, dsttype, src, srctype) \
178  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
179 #elif H5_SIZEOF_INT > H5_SIZEOF_UNSIGNED
180  #define ASSIGN_int_TO_unsigned(dst, dsttype, src, srctype) \
181  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
182 #else /* H5_SIZEOF_INT == H5_SIZEOF_UNSIGNED */
183  #define ASSIGN_int_TO_unsigned(dst, dsttype, src, srctype) \
184  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
185 #endif /* src: int dst: unsigned */
186 
187 /* src: int, dst: uint8_t */
188 #if H5_SIZEOF_INT < H5_SIZEOF_UINT8_T
189  #define ASSIGN_int_TO_uint8_t(dst, dsttype, src, srctype) \
190  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
191 #elif H5_SIZEOF_INT > H5_SIZEOF_UINT8_T
192  #define ASSIGN_int_TO_uint8_t(dst, dsttype, src, srctype) \
193  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
194 #else /* H5_SIZEOF_INT == H5_SIZEOF_UINT8_T */
195  #define ASSIGN_int_TO_uint8_t(dst, dsttype, src, srctype) \
196  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
197 #endif /* src: int dst: uint8_t */
198 
199 /* src: int, dst: uint16_t */
200 #if H5_SIZEOF_INT < H5_SIZEOF_UINT16_T
201  #define ASSIGN_int_TO_uint16_t(dst, dsttype, src, srctype) \
202  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
203 #elif H5_SIZEOF_INT > H5_SIZEOF_UINT16_T
204  #define ASSIGN_int_TO_uint16_t(dst, dsttype, src, srctype) \
205  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
206 #else /* H5_SIZEOF_INT == H5_SIZEOF_UINT16_T */
207  #define ASSIGN_int_TO_uint16_t(dst, dsttype, src, srctype) \
208  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
209 #endif /* src: int dst: uint16_t */
210 
211 /* src: int, dst: uint32_t */
212 #if H5_SIZEOF_INT < H5_SIZEOF_UINT32_T
213  #define ASSIGN_int_TO_uint32_t(dst, dsttype, src, srctype) \
214  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
215 #elif H5_SIZEOF_INT > H5_SIZEOF_UINT32_T
216  #define ASSIGN_int_TO_uint32_t(dst, dsttype, src, srctype) \
217  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
218 #else /* H5_SIZEOF_INT == H5_SIZEOF_UINT32_T */
219  #define ASSIGN_int_TO_uint32_t(dst, dsttype, src, srctype) \
220  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
221 #endif /* src: int dst: uint32_t */
222 
223 /* src: int, dst: uint64_t */
224 #if H5_SIZEOF_INT < H5_SIZEOF_UINT64_T
225  #define ASSIGN_int_TO_uint64_t(dst, dsttype, src, srctype) \
226  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
227 #elif H5_SIZEOF_INT > H5_SIZEOF_UINT64_T
228  #define ASSIGN_int_TO_uint64_t(dst, dsttype, src, srctype) \
229  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
230 #else /* H5_SIZEOF_INT == H5_SIZEOF_UINT64_T */
231  #define ASSIGN_int_TO_uint64_t(dst, dsttype, src, srctype) \
232  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
233 #endif /* src: int dst: uint64_t */
234 
235 /* src: int, dst: ptrdiff_t */
236 #if H5_SIZEOF_INT < H5_SIZEOF_PTRDIFF_T
237  #define ASSIGN_int_TO_ptrdiff_t(dst, dsttype, src, srctype) \
238  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
239 #elif H5_SIZEOF_INT > H5_SIZEOF_PTRDIFF_T
240  #define ASSIGN_int_TO_ptrdiff_t(dst, dsttype, src, srctype) \
241  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
242 #else /* H5_SIZEOF_INT == H5_SIZEOF_PTRDIFF_T */
243  #define ASSIGN_int_TO_ptrdiff_t(dst, dsttype, src, srctype) \
244  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
245 #endif /* src: int dst: ptrdiff_t */
246 
247 /* src: int, dst: size_t */
248 #if H5_SIZEOF_INT < H5_SIZEOF_SIZE_T
249  #define ASSIGN_int_TO_size_t(dst, dsttype, src, srctype) \
250  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
251 #elif H5_SIZEOF_INT > H5_SIZEOF_SIZE_T
252  #define ASSIGN_int_TO_size_t(dst, dsttype, src, srctype) \
253  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
254 #else /* H5_SIZEOF_INT == H5_SIZEOF_SIZE_T */
255  #define ASSIGN_int_TO_size_t(dst, dsttype, src, srctype) \
256  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
257 #endif /* src: int dst: size_t */
258 
259 /* src: int, dst: ssize_t */
260 #if H5_SIZEOF_INT < H5_SIZEOF_SSIZE_T
261  #define ASSIGN_int_TO_ssize_t(dst, dsttype, src, srctype) \
262  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
263 #elif H5_SIZEOF_INT > H5_SIZEOF_SSIZE_T
264  #define ASSIGN_int_TO_ssize_t(dst, dsttype, src, srctype) \
265  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
266 #else /* H5_SIZEOF_INT == H5_SIZEOF_SSIZE_T */
267  #define ASSIGN_int_TO_ssize_t(dst, dsttype, src, srctype) \
268  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
269 #endif /* src: int dst: ssize_t */
270 
271 /* src: int, dst: haddr_t */
272 #if H5_SIZEOF_INT < H5_SIZEOF_HADDR_T
273  #define ASSIGN_int_TO_haddr_t(dst, dsttype, src, srctype) \
274  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
275 #elif H5_SIZEOF_INT > H5_SIZEOF_HADDR_T
276  #define ASSIGN_int_TO_haddr_t(dst, dsttype, src, srctype) \
277  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
278 #else /* H5_SIZEOF_INT == H5_SIZEOF_HADDR_T */
279  #define ASSIGN_int_TO_haddr_t(dst, dsttype, src, srctype) \
280  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
281 #endif /* src: int dst: haddr_t */
282 
283 /* src: int, dst: hsize_t */
284 #if H5_SIZEOF_INT < H5_SIZEOF_HSIZE_T
285  #define ASSIGN_int_TO_hsize_t(dst, dsttype, src, srctype) \
286  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
287 #elif H5_SIZEOF_INT > H5_SIZEOF_HSIZE_T
288  #define ASSIGN_int_TO_hsize_t(dst, dsttype, src, srctype) \
289  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
290 #else /* H5_SIZEOF_INT == H5_SIZEOF_HSIZE_T */
291  #define ASSIGN_int_TO_hsize_t(dst, dsttype, src, srctype) \
292  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
293 #endif /* src: int dst: hsize_t */
294 
295 /* src: int, dst: hssize_t */
296 #if H5_SIZEOF_INT < H5_SIZEOF_HSSIZE_T
297  #define ASSIGN_int_TO_hssize_t(dst, dsttype, src, srctype) \
298  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
299 #elif H5_SIZEOF_INT > H5_SIZEOF_HSSIZE_T
300  #define ASSIGN_int_TO_hssize_t(dst, dsttype, src, srctype) \
301  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
302 #else /* H5_SIZEOF_INT == H5_SIZEOF_HSSIZE_T */
303  #define ASSIGN_int_TO_hssize_t(dst, dsttype, src, srctype) \
304  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
305 #endif /* src: int dst: hssize_t */
306 
307 /* src: int, dst: h5_stat_size_t */
308 #if H5_SIZEOF_INT < H5_SIZEOF_H5_STAT_SIZE_T
309  #define ASSIGN_int_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
310  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
311 #elif H5_SIZEOF_INT > H5_SIZEOF_H5_STAT_SIZE_T
312  #define ASSIGN_int_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
313  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
314 #else /* H5_SIZEOF_INT == H5_SIZEOF_H5_STAT_SIZE_T */
315  #define ASSIGN_int_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
316  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
317 #endif /* src: int dst: h5_stat_size_t */
318 
319 
320 /* Assignment checks for uint8_t */
321 
322 /* src: uint8_t, dst: unsigned */
323 #if H5_SIZEOF_UINT8_T < H5_SIZEOF_UNSIGNED
324  #define ASSIGN_uint8_t_TO_unsigned(dst, dsttype, src, srctype) \
325  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
326 #elif H5_SIZEOF_UINT8_T > H5_SIZEOF_UNSIGNED
327  #define ASSIGN_uint8_t_TO_unsigned(dst, dsttype, src, srctype) \
328  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
329 #else /* H5_SIZEOF_UINT8_T == H5_SIZEOF_UNSIGNED */
330  #define ASSIGN_uint8_t_TO_unsigned(dst, dsttype, src, srctype) \
331  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
332 #endif /* src: uint8_t dst: unsigned */
333 
334 /* src: uint8_t, dst: int */
335 #if H5_SIZEOF_UINT8_T < H5_SIZEOF_INT
336  #define ASSIGN_uint8_t_TO_int(dst, dsttype, src, srctype) \
337  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
338 #elif H5_SIZEOF_UINT8_T > H5_SIZEOF_INT
339  #define ASSIGN_uint8_t_TO_int(dst, dsttype, src, srctype) \
340  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
341 #else /* H5_SIZEOF_UINT8_T == H5_SIZEOF_INT */
342  #define ASSIGN_uint8_t_TO_int(dst, dsttype, src, srctype) \
343  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
344 #endif /* src: uint8_t dst: int */
345 
346 /* src: uint8_t, dst: uint16_t */
347 #if H5_SIZEOF_UINT8_T < H5_SIZEOF_UINT16_T
348  #define ASSIGN_uint8_t_TO_uint16_t(dst, dsttype, src, srctype) \
349  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
350 #elif H5_SIZEOF_UINT8_T > H5_SIZEOF_UINT16_T
351  #define ASSIGN_uint8_t_TO_uint16_t(dst, dsttype, src, srctype) \
352  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
353 #else /* H5_SIZEOF_UINT8_T == H5_SIZEOF_UINT16_T */
354  #define ASSIGN_uint8_t_TO_uint16_t(dst, dsttype, src, srctype) \
355  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
356 #endif /* src: uint8_t dst: uint16_t */
357 
358 /* src: uint8_t, dst: uint32_t */
359 #if H5_SIZEOF_UINT8_T < H5_SIZEOF_UINT32_T
360  #define ASSIGN_uint8_t_TO_uint32_t(dst, dsttype, src, srctype) \
361  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
362 #elif H5_SIZEOF_UINT8_T > H5_SIZEOF_UINT32_T
363  #define ASSIGN_uint8_t_TO_uint32_t(dst, dsttype, src, srctype) \
364  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
365 #else /* H5_SIZEOF_UINT8_T == H5_SIZEOF_UINT32_T */
366  #define ASSIGN_uint8_t_TO_uint32_t(dst, dsttype, src, srctype) \
367  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
368 #endif /* src: uint8_t dst: uint32_t */
369 
370 /* src: uint8_t, dst: uint64_t */
371 #if H5_SIZEOF_UINT8_T < H5_SIZEOF_UINT64_T
372  #define ASSIGN_uint8_t_TO_uint64_t(dst, dsttype, src, srctype) \
373  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
374 #elif H5_SIZEOF_UINT8_T > H5_SIZEOF_UINT64_T
375  #define ASSIGN_uint8_t_TO_uint64_t(dst, dsttype, src, srctype) \
376  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
377 #else /* H5_SIZEOF_UINT8_T == H5_SIZEOF_UINT64_T */
378  #define ASSIGN_uint8_t_TO_uint64_t(dst, dsttype, src, srctype) \
379  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
380 #endif /* src: uint8_t dst: uint64_t */
381 
382 /* src: uint8_t, dst: ptrdiff_t */
383 #if H5_SIZEOF_UINT8_T < H5_SIZEOF_PTRDIFF_T
384  #define ASSIGN_uint8_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
385  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
386 #elif H5_SIZEOF_UINT8_T > H5_SIZEOF_PTRDIFF_T
387  #define ASSIGN_uint8_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
388  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
389 #else /* H5_SIZEOF_UINT8_T == H5_SIZEOF_PTRDIFF_T */
390  #define ASSIGN_uint8_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
391  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
392 #endif /* src: uint8_t dst: ptrdiff_t */
393 
394 /* src: uint8_t, dst: size_t */
395 #if H5_SIZEOF_UINT8_T < H5_SIZEOF_SIZE_T
396  #define ASSIGN_uint8_t_TO_size_t(dst, dsttype, src, srctype) \
397  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
398 #elif H5_SIZEOF_UINT8_T > H5_SIZEOF_SIZE_T
399  #define ASSIGN_uint8_t_TO_size_t(dst, dsttype, src, srctype) \
400  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
401 #else /* H5_SIZEOF_UINT8_T == H5_SIZEOF_SIZE_T */
402  #define ASSIGN_uint8_t_TO_size_t(dst, dsttype, src, srctype) \
403  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
404 #endif /* src: uint8_t dst: size_t */
405 
406 /* src: uint8_t, dst: ssize_t */
407 #if H5_SIZEOF_UINT8_T < H5_SIZEOF_SSIZE_T
408  #define ASSIGN_uint8_t_TO_ssize_t(dst, dsttype, src, srctype) \
409  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
410 #elif H5_SIZEOF_UINT8_T > H5_SIZEOF_SSIZE_T
411  #define ASSIGN_uint8_t_TO_ssize_t(dst, dsttype, src, srctype) \
412  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
413 #else /* H5_SIZEOF_UINT8_T == H5_SIZEOF_SSIZE_T */
414  #define ASSIGN_uint8_t_TO_ssize_t(dst, dsttype, src, srctype) \
415  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
416 #endif /* src: uint8_t dst: ssize_t */
417 
418 /* src: uint8_t, dst: haddr_t */
419 #if H5_SIZEOF_UINT8_T < H5_SIZEOF_HADDR_T
420  #define ASSIGN_uint8_t_TO_haddr_t(dst, dsttype, src, srctype) \
421  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
422 #elif H5_SIZEOF_UINT8_T > H5_SIZEOF_HADDR_T
423  #define ASSIGN_uint8_t_TO_haddr_t(dst, dsttype, src, srctype) \
424  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
425 #else /* H5_SIZEOF_UINT8_T == H5_SIZEOF_HADDR_T */
426  #define ASSIGN_uint8_t_TO_haddr_t(dst, dsttype, src, srctype) \
427  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
428 #endif /* src: uint8_t dst: haddr_t */
429 
430 /* src: uint8_t, dst: hsize_t */
431 #if H5_SIZEOF_UINT8_T < H5_SIZEOF_HSIZE_T
432  #define ASSIGN_uint8_t_TO_hsize_t(dst, dsttype, src, srctype) \
433  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
434 #elif H5_SIZEOF_UINT8_T > H5_SIZEOF_HSIZE_T
435  #define ASSIGN_uint8_t_TO_hsize_t(dst, dsttype, src, srctype) \
436  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
437 #else /* H5_SIZEOF_UINT8_T == H5_SIZEOF_HSIZE_T */
438  #define ASSIGN_uint8_t_TO_hsize_t(dst, dsttype, src, srctype) \
439  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
440 #endif /* src: uint8_t dst: hsize_t */
441 
442 /* src: uint8_t, dst: hssize_t */
443 #if H5_SIZEOF_UINT8_T < H5_SIZEOF_HSSIZE_T
444  #define ASSIGN_uint8_t_TO_hssize_t(dst, dsttype, src, srctype) \
445  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
446 #elif H5_SIZEOF_UINT8_T > H5_SIZEOF_HSSIZE_T
447  #define ASSIGN_uint8_t_TO_hssize_t(dst, dsttype, src, srctype) \
448  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
449 #else /* H5_SIZEOF_UINT8_T == H5_SIZEOF_HSSIZE_T */
450  #define ASSIGN_uint8_t_TO_hssize_t(dst, dsttype, src, srctype) \
451  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
452 #endif /* src: uint8_t dst: hssize_t */
453 
454 /* src: uint8_t, dst: h5_stat_size_t */
455 #if H5_SIZEOF_UINT8_T < H5_SIZEOF_H5_STAT_SIZE_T
456  #define ASSIGN_uint8_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
457  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
458 #elif H5_SIZEOF_UINT8_T > H5_SIZEOF_H5_STAT_SIZE_T
459  #define ASSIGN_uint8_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
460  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
461 #else /* H5_SIZEOF_UINT8_T == H5_SIZEOF_H5_STAT_SIZE_T */
462  #define ASSIGN_uint8_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
463  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
464 #endif /* src: uint8_t dst: h5_stat_size_t */
465 
466 
467 /* Assignment checks for uint16_t */
468 
469 /* src: uint16_t, dst: unsigned */
470 #if H5_SIZEOF_UINT16_T < H5_SIZEOF_UNSIGNED
471  #define ASSIGN_uint16_t_TO_unsigned(dst, dsttype, src, srctype) \
472  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
473 #elif H5_SIZEOF_UINT16_T > H5_SIZEOF_UNSIGNED
474  #define ASSIGN_uint16_t_TO_unsigned(dst, dsttype, src, srctype) \
475  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
476 #else /* H5_SIZEOF_UINT16_T == H5_SIZEOF_UNSIGNED */
477  #define ASSIGN_uint16_t_TO_unsigned(dst, dsttype, src, srctype) \
478  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
479 #endif /* src: uint16_t dst: unsigned */
480 
481 /* src: uint16_t, dst: int */
482 #if H5_SIZEOF_UINT16_T < H5_SIZEOF_INT
483  #define ASSIGN_uint16_t_TO_int(dst, dsttype, src, srctype) \
484  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
485 #elif H5_SIZEOF_UINT16_T > H5_SIZEOF_INT
486  #define ASSIGN_uint16_t_TO_int(dst, dsttype, src, srctype) \
487  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
488 #else /* H5_SIZEOF_UINT16_T == H5_SIZEOF_INT */
489  #define ASSIGN_uint16_t_TO_int(dst, dsttype, src, srctype) \
490  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
491 #endif /* src: uint16_t dst: int */
492 
493 /* src: uint16_t, dst: uint8_t */
494 #if H5_SIZEOF_UINT16_T < H5_SIZEOF_UINT8_T
495  #define ASSIGN_uint16_t_TO_uint8_t(dst, dsttype, src, srctype) \
496  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
497 #elif H5_SIZEOF_UINT16_T > H5_SIZEOF_UINT8_T
498  #define ASSIGN_uint16_t_TO_uint8_t(dst, dsttype, src, srctype) \
499  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
500 #else /* H5_SIZEOF_UINT16_T == H5_SIZEOF_UINT8_T */
501  #define ASSIGN_uint16_t_TO_uint8_t(dst, dsttype, src, srctype) \
502  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
503 #endif /* src: uint16_t dst: uint8_t */
504 
505 /* src: uint16_t, dst: uint32_t */
506 #if H5_SIZEOF_UINT16_T < H5_SIZEOF_UINT32_T
507  #define ASSIGN_uint16_t_TO_uint32_t(dst, dsttype, src, srctype) \
508  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
509 #elif H5_SIZEOF_UINT16_T > H5_SIZEOF_UINT32_T
510  #define ASSIGN_uint16_t_TO_uint32_t(dst, dsttype, src, srctype) \
511  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
512 #else /* H5_SIZEOF_UINT16_T == H5_SIZEOF_UINT32_T */
513  #define ASSIGN_uint16_t_TO_uint32_t(dst, dsttype, src, srctype) \
514  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
515 #endif /* src: uint16_t dst: uint32_t */
516 
517 /* src: uint16_t, dst: uint64_t */
518 #if H5_SIZEOF_UINT16_T < H5_SIZEOF_UINT64_T
519  #define ASSIGN_uint16_t_TO_uint64_t(dst, dsttype, src, srctype) \
520  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
521 #elif H5_SIZEOF_UINT16_T > H5_SIZEOF_UINT64_T
522  #define ASSIGN_uint16_t_TO_uint64_t(dst, dsttype, src, srctype) \
523  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
524 #else /* H5_SIZEOF_UINT16_T == H5_SIZEOF_UINT64_T */
525  #define ASSIGN_uint16_t_TO_uint64_t(dst, dsttype, src, srctype) \
526  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
527 #endif /* src: uint16_t dst: uint64_t */
528 
529 /* src: uint16_t, dst: ptrdiff_t */
530 #if H5_SIZEOF_UINT16_T < H5_SIZEOF_PTRDIFF_T
531  #define ASSIGN_uint16_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
532  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
533 #elif H5_SIZEOF_UINT16_T > H5_SIZEOF_PTRDIFF_T
534  #define ASSIGN_uint16_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
535  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
536 #else /* H5_SIZEOF_UINT16_T == H5_SIZEOF_PTRDIFF_T */
537  #define ASSIGN_uint16_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
538  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
539 #endif /* src: uint16_t dst: ptrdiff_t */
540 
541 /* src: uint16_t, dst: size_t */
542 #if H5_SIZEOF_UINT16_T < H5_SIZEOF_SIZE_T
543  #define ASSIGN_uint16_t_TO_size_t(dst, dsttype, src, srctype) \
544  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
545 #elif H5_SIZEOF_UINT16_T > H5_SIZEOF_SIZE_T
546  #define ASSIGN_uint16_t_TO_size_t(dst, dsttype, src, srctype) \
547  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
548 #else /* H5_SIZEOF_UINT16_T == H5_SIZEOF_SIZE_T */
549  #define ASSIGN_uint16_t_TO_size_t(dst, dsttype, src, srctype) \
550  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
551 #endif /* src: uint16_t dst: size_t */
552 
553 /* src: uint16_t, dst: ssize_t */
554 #if H5_SIZEOF_UINT16_T < H5_SIZEOF_SSIZE_T
555  #define ASSIGN_uint16_t_TO_ssize_t(dst, dsttype, src, srctype) \
556  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
557 #elif H5_SIZEOF_UINT16_T > H5_SIZEOF_SSIZE_T
558  #define ASSIGN_uint16_t_TO_ssize_t(dst, dsttype, src, srctype) \
559  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
560 #else /* H5_SIZEOF_UINT16_T == H5_SIZEOF_SSIZE_T */
561  #define ASSIGN_uint16_t_TO_ssize_t(dst, dsttype, src, srctype) \
562  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
563 #endif /* src: uint16_t dst: ssize_t */
564 
565 /* src: uint16_t, dst: haddr_t */
566 #if H5_SIZEOF_UINT16_T < H5_SIZEOF_HADDR_T
567  #define ASSIGN_uint16_t_TO_haddr_t(dst, dsttype, src, srctype) \
568  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
569 #elif H5_SIZEOF_UINT16_T > H5_SIZEOF_HADDR_T
570  #define ASSIGN_uint16_t_TO_haddr_t(dst, dsttype, src, srctype) \
571  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
572 #else /* H5_SIZEOF_UINT16_T == H5_SIZEOF_HADDR_T */
573  #define ASSIGN_uint16_t_TO_haddr_t(dst, dsttype, src, srctype) \
574  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
575 #endif /* src: uint16_t dst: haddr_t */
576 
577 /* src: uint16_t, dst: hsize_t */
578 #if H5_SIZEOF_UINT16_T < H5_SIZEOF_HSIZE_T
579  #define ASSIGN_uint16_t_TO_hsize_t(dst, dsttype, src, srctype) \
580  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
581 #elif H5_SIZEOF_UINT16_T > H5_SIZEOF_HSIZE_T
582  #define ASSIGN_uint16_t_TO_hsize_t(dst, dsttype, src, srctype) \
583  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
584 #else /* H5_SIZEOF_UINT16_T == H5_SIZEOF_HSIZE_T */
585  #define ASSIGN_uint16_t_TO_hsize_t(dst, dsttype, src, srctype) \
586  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
587 #endif /* src: uint16_t dst: hsize_t */
588 
589 /* src: uint16_t, dst: hssize_t */
590 #if H5_SIZEOF_UINT16_T < H5_SIZEOF_HSSIZE_T
591  #define ASSIGN_uint16_t_TO_hssize_t(dst, dsttype, src, srctype) \
592  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
593 #elif H5_SIZEOF_UINT16_T > H5_SIZEOF_HSSIZE_T
594  #define ASSIGN_uint16_t_TO_hssize_t(dst, dsttype, src, srctype) \
595  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
596 #else /* H5_SIZEOF_UINT16_T == H5_SIZEOF_HSSIZE_T */
597  #define ASSIGN_uint16_t_TO_hssize_t(dst, dsttype, src, srctype) \
598  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
599 #endif /* src: uint16_t dst: hssize_t */
600 
601 /* src: uint16_t, dst: h5_stat_size_t */
602 #if H5_SIZEOF_UINT16_T < H5_SIZEOF_H5_STAT_SIZE_T
603  #define ASSIGN_uint16_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
604  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
605 #elif H5_SIZEOF_UINT16_T > H5_SIZEOF_H5_STAT_SIZE_T
606  #define ASSIGN_uint16_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
607  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
608 #else /* H5_SIZEOF_UINT16_T == H5_SIZEOF_H5_STAT_SIZE_T */
609  #define ASSIGN_uint16_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
610  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
611 #endif /* src: uint16_t dst: h5_stat_size_t */
612 
613 
614 /* Assignment checks for uint32_t */
615 
616 /* src: uint32_t, dst: unsigned */
617 #if H5_SIZEOF_UINT32_T < H5_SIZEOF_UNSIGNED
618  #define ASSIGN_uint32_t_TO_unsigned(dst, dsttype, src, srctype) \
619  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
620 #elif H5_SIZEOF_UINT32_T > H5_SIZEOF_UNSIGNED
621  #define ASSIGN_uint32_t_TO_unsigned(dst, dsttype, src, srctype) \
622  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
623 #else /* H5_SIZEOF_UINT32_T == H5_SIZEOF_UNSIGNED */
624  #define ASSIGN_uint32_t_TO_unsigned(dst, dsttype, src, srctype) \
625  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
626 #endif /* src: uint32_t dst: unsigned */
627 
628 /* src: uint32_t, dst: int */
629 #if H5_SIZEOF_UINT32_T < H5_SIZEOF_INT
630  #define ASSIGN_uint32_t_TO_int(dst, dsttype, src, srctype) \
631  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
632 #elif H5_SIZEOF_UINT32_T > H5_SIZEOF_INT
633  #define ASSIGN_uint32_t_TO_int(dst, dsttype, src, srctype) \
634  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
635 #else /* H5_SIZEOF_UINT32_T == H5_SIZEOF_INT */
636  #define ASSIGN_uint32_t_TO_int(dst, dsttype, src, srctype) \
637  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
638 #endif /* src: uint32_t dst: int */
639 
640 /* src: uint32_t, dst: uint8_t */
641 #if H5_SIZEOF_UINT32_T < H5_SIZEOF_UINT8_T
642  #define ASSIGN_uint32_t_TO_uint8_t(dst, dsttype, src, srctype) \
643  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
644 #elif H5_SIZEOF_UINT32_T > H5_SIZEOF_UINT8_T
645  #define ASSIGN_uint32_t_TO_uint8_t(dst, dsttype, src, srctype) \
646  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
647 #else /* H5_SIZEOF_UINT32_T == H5_SIZEOF_UINT8_T */
648  #define ASSIGN_uint32_t_TO_uint8_t(dst, dsttype, src, srctype) \
649  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
650 #endif /* src: uint32_t dst: uint8_t */
651 
652 /* src: uint32_t, dst: uint16_t */
653 #if H5_SIZEOF_UINT32_T < H5_SIZEOF_UINT16_T
654  #define ASSIGN_uint32_t_TO_uint16_t(dst, dsttype, src, srctype) \
655  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
656 #elif H5_SIZEOF_UINT32_T > H5_SIZEOF_UINT16_T
657  #define ASSIGN_uint32_t_TO_uint16_t(dst, dsttype, src, srctype) \
658  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
659 #else /* H5_SIZEOF_UINT32_T == H5_SIZEOF_UINT16_T */
660  #define ASSIGN_uint32_t_TO_uint16_t(dst, dsttype, src, srctype) \
661  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
662 #endif /* src: uint32_t dst: uint16_t */
663 
664 /* src: uint32_t, dst: uint64_t */
665 #if H5_SIZEOF_UINT32_T < H5_SIZEOF_UINT64_T
666  #define ASSIGN_uint32_t_TO_uint64_t(dst, dsttype, src, srctype) \
667  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
668 #elif H5_SIZEOF_UINT32_T > H5_SIZEOF_UINT64_T
669  #define ASSIGN_uint32_t_TO_uint64_t(dst, dsttype, src, srctype) \
670  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
671 #else /* H5_SIZEOF_UINT32_T == H5_SIZEOF_UINT64_T */
672  #define ASSIGN_uint32_t_TO_uint64_t(dst, dsttype, src, srctype) \
673  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
674 #endif /* src: uint32_t dst: uint64_t */
675 
676 /* src: uint32_t, dst: ptrdiff_t */
677 #if H5_SIZEOF_UINT32_T < H5_SIZEOF_PTRDIFF_T
678  #define ASSIGN_uint32_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
679  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
680 #elif H5_SIZEOF_UINT32_T > H5_SIZEOF_PTRDIFF_T
681  #define ASSIGN_uint32_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
682  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
683 #else /* H5_SIZEOF_UINT32_T == H5_SIZEOF_PTRDIFF_T */
684  #define ASSIGN_uint32_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
685  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
686 #endif /* src: uint32_t dst: ptrdiff_t */
687 
688 /* src: uint32_t, dst: size_t */
689 #if H5_SIZEOF_UINT32_T < H5_SIZEOF_SIZE_T
690  #define ASSIGN_uint32_t_TO_size_t(dst, dsttype, src, srctype) \
691  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
692 #elif H5_SIZEOF_UINT32_T > H5_SIZEOF_SIZE_T
693  #define ASSIGN_uint32_t_TO_size_t(dst, dsttype, src, srctype) \
694  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
695 #else /* H5_SIZEOF_UINT32_T == H5_SIZEOF_SIZE_T */
696  #define ASSIGN_uint32_t_TO_size_t(dst, dsttype, src, srctype) \
697  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
698 #endif /* src: uint32_t dst: size_t */
699 
700 /* src: uint32_t, dst: ssize_t */
701 #if H5_SIZEOF_UINT32_T < H5_SIZEOF_SSIZE_T
702  #define ASSIGN_uint32_t_TO_ssize_t(dst, dsttype, src, srctype) \
703  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
704 #elif H5_SIZEOF_UINT32_T > H5_SIZEOF_SSIZE_T
705  #define ASSIGN_uint32_t_TO_ssize_t(dst, dsttype, src, srctype) \
706  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
707 #else /* H5_SIZEOF_UINT32_T == H5_SIZEOF_SSIZE_T */
708  #define ASSIGN_uint32_t_TO_ssize_t(dst, dsttype, src, srctype) \
709  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
710 #endif /* src: uint32_t dst: ssize_t */
711 
712 /* src: uint32_t, dst: haddr_t */
713 #if H5_SIZEOF_UINT32_T < H5_SIZEOF_HADDR_T
714  #define ASSIGN_uint32_t_TO_haddr_t(dst, dsttype, src, srctype) \
715  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
716 #elif H5_SIZEOF_UINT32_T > H5_SIZEOF_HADDR_T
717  #define ASSIGN_uint32_t_TO_haddr_t(dst, dsttype, src, srctype) \
718  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
719 #else /* H5_SIZEOF_UINT32_T == H5_SIZEOF_HADDR_T */
720  #define ASSIGN_uint32_t_TO_haddr_t(dst, dsttype, src, srctype) \
721  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
722 #endif /* src: uint32_t dst: haddr_t */
723 
724 /* src: uint32_t, dst: hsize_t */
725 #if H5_SIZEOF_UINT32_T < H5_SIZEOF_HSIZE_T
726  #define ASSIGN_uint32_t_TO_hsize_t(dst, dsttype, src, srctype) \
727  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
728 #elif H5_SIZEOF_UINT32_T > H5_SIZEOF_HSIZE_T
729  #define ASSIGN_uint32_t_TO_hsize_t(dst, dsttype, src, srctype) \
730  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
731 #else /* H5_SIZEOF_UINT32_T == H5_SIZEOF_HSIZE_T */
732  #define ASSIGN_uint32_t_TO_hsize_t(dst, dsttype, src, srctype) \
733  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
734 #endif /* src: uint32_t dst: hsize_t */
735 
736 /* src: uint32_t, dst: hssize_t */
737 #if H5_SIZEOF_UINT32_T < H5_SIZEOF_HSSIZE_T
738  #define ASSIGN_uint32_t_TO_hssize_t(dst, dsttype, src, srctype) \
739  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
740 #elif H5_SIZEOF_UINT32_T > H5_SIZEOF_HSSIZE_T
741  #define ASSIGN_uint32_t_TO_hssize_t(dst, dsttype, src, srctype) \
742  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
743 #else /* H5_SIZEOF_UINT32_T == H5_SIZEOF_HSSIZE_T */
744  #define ASSIGN_uint32_t_TO_hssize_t(dst, dsttype, src, srctype) \
745  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
746 #endif /* src: uint32_t dst: hssize_t */
747 
748 /* src: uint32_t, dst: h5_stat_size_t */
749 #if H5_SIZEOF_UINT32_T < H5_SIZEOF_H5_STAT_SIZE_T
750  #define ASSIGN_uint32_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
751  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
752 #elif H5_SIZEOF_UINT32_T > H5_SIZEOF_H5_STAT_SIZE_T
753  #define ASSIGN_uint32_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
754  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
755 #else /* H5_SIZEOF_UINT32_T == H5_SIZEOF_H5_STAT_SIZE_T */
756  #define ASSIGN_uint32_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
757  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
758 #endif /* src: uint32_t dst: h5_stat_size_t */
759 
760 
761 /* Assignment checks for uint64_t */
762 
763 /* src: uint64_t, dst: unsigned */
764 #if H5_SIZEOF_UINT64_T < H5_SIZEOF_UNSIGNED
765  #define ASSIGN_uint64_t_TO_unsigned(dst, dsttype, src, srctype) \
766  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
767 #elif H5_SIZEOF_UINT64_T > H5_SIZEOF_UNSIGNED
768  #define ASSIGN_uint64_t_TO_unsigned(dst, dsttype, src, srctype) \
769  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
770 #else /* H5_SIZEOF_UINT64_T == H5_SIZEOF_UNSIGNED */
771  #define ASSIGN_uint64_t_TO_unsigned(dst, dsttype, src, srctype) \
772  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
773 #endif /* src: uint64_t dst: unsigned */
774 
775 /* src: uint64_t, dst: int */
776 #if H5_SIZEOF_UINT64_T < H5_SIZEOF_INT
777  #define ASSIGN_uint64_t_TO_int(dst, dsttype, src, srctype) \
778  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
779 #elif H5_SIZEOF_UINT64_T > H5_SIZEOF_INT
780  #define ASSIGN_uint64_t_TO_int(dst, dsttype, src, srctype) \
781  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
782 #else /* H5_SIZEOF_UINT64_T == H5_SIZEOF_INT */
783  #define ASSIGN_uint64_t_TO_int(dst, dsttype, src, srctype) \
784  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
785 #endif /* src: uint64_t dst: int */
786 
787 /* src: uint64_t, dst: uint8_t */
788 #if H5_SIZEOF_UINT64_T < H5_SIZEOF_UINT8_T
789  #define ASSIGN_uint64_t_TO_uint8_t(dst, dsttype, src, srctype) \
790  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
791 #elif H5_SIZEOF_UINT64_T > H5_SIZEOF_UINT8_T
792  #define ASSIGN_uint64_t_TO_uint8_t(dst, dsttype, src, srctype) \
793  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
794 #else /* H5_SIZEOF_UINT64_T == H5_SIZEOF_UINT8_T */
795  #define ASSIGN_uint64_t_TO_uint8_t(dst, dsttype, src, srctype) \
796  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
797 #endif /* src: uint64_t dst: uint8_t */
798 
799 /* src: uint64_t, dst: uint16_t */
800 #if H5_SIZEOF_UINT64_T < H5_SIZEOF_UINT16_T
801  #define ASSIGN_uint64_t_TO_uint16_t(dst, dsttype, src, srctype) \
802  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
803 #elif H5_SIZEOF_UINT64_T > H5_SIZEOF_UINT16_T
804  #define ASSIGN_uint64_t_TO_uint16_t(dst, dsttype, src, srctype) \
805  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
806 #else /* H5_SIZEOF_UINT64_T == H5_SIZEOF_UINT16_T */
807  #define ASSIGN_uint64_t_TO_uint16_t(dst, dsttype, src, srctype) \
808  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
809 #endif /* src: uint64_t dst: uint16_t */
810 
811 /* src: uint64_t, dst: uint32_t */
812 #if H5_SIZEOF_UINT64_T < H5_SIZEOF_UINT32_T
813  #define ASSIGN_uint64_t_TO_uint32_t(dst, dsttype, src, srctype) \
814  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
815 #elif H5_SIZEOF_UINT64_T > H5_SIZEOF_UINT32_T
816  #define ASSIGN_uint64_t_TO_uint32_t(dst, dsttype, src, srctype) \
817  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
818 #else /* H5_SIZEOF_UINT64_T == H5_SIZEOF_UINT32_T */
819  #define ASSIGN_uint64_t_TO_uint32_t(dst, dsttype, src, srctype) \
820  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
821 #endif /* src: uint64_t dst: uint32_t */
822 
823 /* src: uint64_t, dst: ptrdiff_t */
824 #if H5_SIZEOF_UINT64_T < H5_SIZEOF_PTRDIFF_T
825  #define ASSIGN_uint64_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
826  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
827 #elif H5_SIZEOF_UINT64_T > H5_SIZEOF_PTRDIFF_T
828  #define ASSIGN_uint64_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
829  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
830 #else /* H5_SIZEOF_UINT64_T == H5_SIZEOF_PTRDIFF_T */
831  #define ASSIGN_uint64_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
832  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
833 #endif /* src: uint64_t dst: ptrdiff_t */
834 
835 /* src: uint64_t, dst: size_t */
836 #if H5_SIZEOF_UINT64_T < H5_SIZEOF_SIZE_T
837  #define ASSIGN_uint64_t_TO_size_t(dst, dsttype, src, srctype) \
838  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
839 #elif H5_SIZEOF_UINT64_T > H5_SIZEOF_SIZE_T
840  #define ASSIGN_uint64_t_TO_size_t(dst, dsttype, src, srctype) \
841  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
842 #else /* H5_SIZEOF_UINT64_T == H5_SIZEOF_SIZE_T */
843  #define ASSIGN_uint64_t_TO_size_t(dst, dsttype, src, srctype) \
844  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
845 #endif /* src: uint64_t dst: size_t */
846 
847 /* src: uint64_t, dst: ssize_t */
848 #if H5_SIZEOF_UINT64_T < H5_SIZEOF_SSIZE_T
849  #define ASSIGN_uint64_t_TO_ssize_t(dst, dsttype, src, srctype) \
850  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
851 #elif H5_SIZEOF_UINT64_T > H5_SIZEOF_SSIZE_T
852  #define ASSIGN_uint64_t_TO_ssize_t(dst, dsttype, src, srctype) \
853  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
854 #else /* H5_SIZEOF_UINT64_T == H5_SIZEOF_SSIZE_T */
855  #define ASSIGN_uint64_t_TO_ssize_t(dst, dsttype, src, srctype) \
856  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
857 #endif /* src: uint64_t dst: ssize_t */
858 
859 /* src: uint64_t, dst: haddr_t */
860 #if H5_SIZEOF_UINT64_T < H5_SIZEOF_HADDR_T
861  #define ASSIGN_uint64_t_TO_haddr_t(dst, dsttype, src, srctype) \
862  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
863 #elif H5_SIZEOF_UINT64_T > H5_SIZEOF_HADDR_T
864  #define ASSIGN_uint64_t_TO_haddr_t(dst, dsttype, src, srctype) \
865  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
866 #else /* H5_SIZEOF_UINT64_T == H5_SIZEOF_HADDR_T */
867  #define ASSIGN_uint64_t_TO_haddr_t(dst, dsttype, src, srctype) \
868  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
869 #endif /* src: uint64_t dst: haddr_t */
870 
871 /* src: uint64_t, dst: hsize_t */
872 #if H5_SIZEOF_UINT64_T < H5_SIZEOF_HSIZE_T
873  #define ASSIGN_uint64_t_TO_hsize_t(dst, dsttype, src, srctype) \
874  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
875 #elif H5_SIZEOF_UINT64_T > H5_SIZEOF_HSIZE_T
876  #define ASSIGN_uint64_t_TO_hsize_t(dst, dsttype, src, srctype) \
877  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
878 #else /* H5_SIZEOF_UINT64_T == H5_SIZEOF_HSIZE_T */
879  #define ASSIGN_uint64_t_TO_hsize_t(dst, dsttype, src, srctype) \
880  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
881 #endif /* src: uint64_t dst: hsize_t */
882 
883 /* src: uint64_t, dst: hssize_t */
884 #if H5_SIZEOF_UINT64_T < H5_SIZEOF_HSSIZE_T
885  #define ASSIGN_uint64_t_TO_hssize_t(dst, dsttype, src, srctype) \
886  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
887 #elif H5_SIZEOF_UINT64_T > H5_SIZEOF_HSSIZE_T
888  #define ASSIGN_uint64_t_TO_hssize_t(dst, dsttype, src, srctype) \
889  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
890 #else /* H5_SIZEOF_UINT64_T == H5_SIZEOF_HSSIZE_T */
891  #define ASSIGN_uint64_t_TO_hssize_t(dst, dsttype, src, srctype) \
892  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
893 #endif /* src: uint64_t dst: hssize_t */
894 
895 /* src: uint64_t, dst: h5_stat_size_t */
896 #if H5_SIZEOF_UINT64_T < H5_SIZEOF_H5_STAT_SIZE_T
897  #define ASSIGN_uint64_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
898  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
899 #elif H5_SIZEOF_UINT64_T > H5_SIZEOF_H5_STAT_SIZE_T
900  #define ASSIGN_uint64_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
901  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
902 #else /* H5_SIZEOF_UINT64_T == H5_SIZEOF_H5_STAT_SIZE_T */
903  #define ASSIGN_uint64_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
904  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
905 #endif /* src: uint64_t dst: h5_stat_size_t */
906 
907 
908 /* Assignment checks for ptrdiff_t */
909 
910 /* src: ptrdiff_t, dst: unsigned */
911 #if H5_SIZEOF_PTRDIFF_T < H5_SIZEOF_UNSIGNED
912  #define ASSIGN_ptrdiff_t_TO_unsigned(dst, dsttype, src, srctype) \
913  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
914 #elif H5_SIZEOF_PTRDIFF_T > H5_SIZEOF_UNSIGNED
915  #define ASSIGN_ptrdiff_t_TO_unsigned(dst, dsttype, src, srctype) \
916  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
917 #else /* H5_SIZEOF_PTRDIFF_T == H5_SIZEOF_UNSIGNED */
918  #define ASSIGN_ptrdiff_t_TO_unsigned(dst, dsttype, src, srctype) \
919  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
920 #endif /* src: ptrdiff_t dst: unsigned */
921 
922 /* src: ptrdiff_t, dst: int */
923 #if H5_SIZEOF_PTRDIFF_T < H5_SIZEOF_INT
924  #define ASSIGN_ptrdiff_t_TO_int(dst, dsttype, src, srctype) \
925  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
926 #elif H5_SIZEOF_PTRDIFF_T > H5_SIZEOF_INT
927  #define ASSIGN_ptrdiff_t_TO_int(dst, dsttype, src, srctype) \
928  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
929 #else /* H5_SIZEOF_PTRDIFF_T == H5_SIZEOF_INT */
930  #define ASSIGN_ptrdiff_t_TO_int(dst, dsttype, src, srctype) \
931  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
932 #endif /* src: ptrdiff_t dst: int */
933 
934 /* src: ptrdiff_t, dst: uint8_t */
935 #if H5_SIZEOF_PTRDIFF_T < H5_SIZEOF_UINT8_T
936  #define ASSIGN_ptrdiff_t_TO_uint8_t(dst, dsttype, src, srctype) \
937  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
938 #elif H5_SIZEOF_PTRDIFF_T > H5_SIZEOF_UINT8_T
939  #define ASSIGN_ptrdiff_t_TO_uint8_t(dst, dsttype, src, srctype) \
940  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
941 #else /* H5_SIZEOF_PTRDIFF_T == H5_SIZEOF_UINT8_T */
942  #define ASSIGN_ptrdiff_t_TO_uint8_t(dst, dsttype, src, srctype) \
943  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
944 #endif /* src: ptrdiff_t dst: uint8_t */
945 
946 /* src: ptrdiff_t, dst: uint16_t */
947 #if H5_SIZEOF_PTRDIFF_T < H5_SIZEOF_UINT16_T
948  #define ASSIGN_ptrdiff_t_TO_uint16_t(dst, dsttype, src, srctype) \
949  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
950 #elif H5_SIZEOF_PTRDIFF_T > H5_SIZEOF_UINT16_T
951  #define ASSIGN_ptrdiff_t_TO_uint16_t(dst, dsttype, src, srctype) \
952  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
953 #else /* H5_SIZEOF_PTRDIFF_T == H5_SIZEOF_UINT16_T */
954  #define ASSIGN_ptrdiff_t_TO_uint16_t(dst, dsttype, src, srctype) \
955  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
956 #endif /* src: ptrdiff_t dst: uint16_t */
957 
958 /* src: ptrdiff_t, dst: uint32_t */
959 #if H5_SIZEOF_PTRDIFF_T < H5_SIZEOF_UINT32_T
960  #define ASSIGN_ptrdiff_t_TO_uint32_t(dst, dsttype, src, srctype) \
961  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
962 #elif H5_SIZEOF_PTRDIFF_T > H5_SIZEOF_UINT32_T
963  #define ASSIGN_ptrdiff_t_TO_uint32_t(dst, dsttype, src, srctype) \
964  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
965 #else /* H5_SIZEOF_PTRDIFF_T == H5_SIZEOF_UINT32_T */
966  #define ASSIGN_ptrdiff_t_TO_uint32_t(dst, dsttype, src, srctype) \
967  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
968 #endif /* src: ptrdiff_t dst: uint32_t */
969 
970 /* src: ptrdiff_t, dst: uint64_t */
971 #if H5_SIZEOF_PTRDIFF_T < H5_SIZEOF_UINT64_T
972  #define ASSIGN_ptrdiff_t_TO_uint64_t(dst, dsttype, src, srctype) \
973  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
974 #elif H5_SIZEOF_PTRDIFF_T > H5_SIZEOF_UINT64_T
975  #define ASSIGN_ptrdiff_t_TO_uint64_t(dst, dsttype, src, srctype) \
976  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
977 #else /* H5_SIZEOF_PTRDIFF_T == H5_SIZEOF_UINT64_T */
978  #define ASSIGN_ptrdiff_t_TO_uint64_t(dst, dsttype, src, srctype) \
979  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
980 #endif /* src: ptrdiff_t dst: uint64_t */
981 
982 /* src: ptrdiff_t, dst: size_t */
983 #if H5_SIZEOF_PTRDIFF_T < H5_SIZEOF_SIZE_T
984  #define ASSIGN_ptrdiff_t_TO_size_t(dst, dsttype, src, srctype) \
985  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
986 #elif H5_SIZEOF_PTRDIFF_T > H5_SIZEOF_SIZE_T
987  #define ASSIGN_ptrdiff_t_TO_size_t(dst, dsttype, src, srctype) \
988  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
989 #else /* H5_SIZEOF_PTRDIFF_T == H5_SIZEOF_SIZE_T */
990  #define ASSIGN_ptrdiff_t_TO_size_t(dst, dsttype, src, srctype) \
991  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
992 #endif /* src: ptrdiff_t dst: size_t */
993 
994 /* src: ptrdiff_t, dst: ssize_t */
995 #if H5_SIZEOF_PTRDIFF_T < H5_SIZEOF_SSIZE_T
996  #define ASSIGN_ptrdiff_t_TO_ssize_t(dst, dsttype, src, srctype) \
997  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
998 #elif H5_SIZEOF_PTRDIFF_T > H5_SIZEOF_SSIZE_T
999  #define ASSIGN_ptrdiff_t_TO_ssize_t(dst, dsttype, src, srctype) \
1000  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1001 #else /* H5_SIZEOF_PTRDIFF_T == H5_SIZEOF_SSIZE_T */
1002  #define ASSIGN_ptrdiff_t_TO_ssize_t(dst, dsttype, src, srctype) \
1003  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1004 #endif /* src: ptrdiff_t dst: ssize_t */
1005 
1006 /* src: ptrdiff_t, dst: haddr_t */
1007 #if H5_SIZEOF_PTRDIFF_T < H5_SIZEOF_HADDR_T
1008  #define ASSIGN_ptrdiff_t_TO_haddr_t(dst, dsttype, src, srctype) \
1009  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1010 #elif H5_SIZEOF_PTRDIFF_T > H5_SIZEOF_HADDR_T
1011  #define ASSIGN_ptrdiff_t_TO_haddr_t(dst, dsttype, src, srctype) \
1012  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1013 #else /* H5_SIZEOF_PTRDIFF_T == H5_SIZEOF_HADDR_T */
1014  #define ASSIGN_ptrdiff_t_TO_haddr_t(dst, dsttype, src, srctype) \
1015  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1016 #endif /* src: ptrdiff_t dst: haddr_t */
1017 
1018 /* src: ptrdiff_t, dst: hsize_t */
1019 #if H5_SIZEOF_PTRDIFF_T < H5_SIZEOF_HSIZE_T
1020  #define ASSIGN_ptrdiff_t_TO_hsize_t(dst, dsttype, src, srctype) \
1021  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1022 #elif H5_SIZEOF_PTRDIFF_T > H5_SIZEOF_HSIZE_T
1023  #define ASSIGN_ptrdiff_t_TO_hsize_t(dst, dsttype, src, srctype) \
1024  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1025 #else /* H5_SIZEOF_PTRDIFF_T == H5_SIZEOF_HSIZE_T */
1026  #define ASSIGN_ptrdiff_t_TO_hsize_t(dst, dsttype, src, srctype) \
1027  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1028 #endif /* src: ptrdiff_t dst: hsize_t */
1029 
1030 /* src: ptrdiff_t, dst: hssize_t */
1031 #if H5_SIZEOF_PTRDIFF_T < H5_SIZEOF_HSSIZE_T
1032  #define ASSIGN_ptrdiff_t_TO_hssize_t(dst, dsttype, src, srctype) \
1033  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1034 #elif H5_SIZEOF_PTRDIFF_T > H5_SIZEOF_HSSIZE_T
1035  #define ASSIGN_ptrdiff_t_TO_hssize_t(dst, dsttype, src, srctype) \
1036  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1037 #else /* H5_SIZEOF_PTRDIFF_T == H5_SIZEOF_HSSIZE_T */
1038  #define ASSIGN_ptrdiff_t_TO_hssize_t(dst, dsttype, src, srctype) \
1039  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1040 #endif /* src: ptrdiff_t dst: hssize_t */
1041 
1042 /* src: ptrdiff_t, dst: h5_stat_size_t */
1043 #if H5_SIZEOF_PTRDIFF_T < H5_SIZEOF_H5_STAT_SIZE_T
1044  #define ASSIGN_ptrdiff_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1045  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1046 #elif H5_SIZEOF_PTRDIFF_T > H5_SIZEOF_H5_STAT_SIZE_T
1047  #define ASSIGN_ptrdiff_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1048  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1049 #else /* H5_SIZEOF_PTRDIFF_T == H5_SIZEOF_H5_STAT_SIZE_T */
1050  #define ASSIGN_ptrdiff_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1051  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1052 #endif /* src: ptrdiff_t dst: h5_stat_size_t */
1053 
1054 
1055 /* Assignment checks for size_t */
1056 
1057 /* src: size_t, dst: unsigned */
1058 #if H5_SIZEOF_SIZE_T < H5_SIZEOF_UNSIGNED
1059  #define ASSIGN_size_t_TO_unsigned(dst, dsttype, src, srctype) \
1060  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1061 #elif H5_SIZEOF_SIZE_T > H5_SIZEOF_UNSIGNED
1062  #define ASSIGN_size_t_TO_unsigned(dst, dsttype, src, srctype) \
1063  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1064 #else /* H5_SIZEOF_SIZE_T == H5_SIZEOF_UNSIGNED */
1065  #define ASSIGN_size_t_TO_unsigned(dst, dsttype, src, srctype) \
1066  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1067 #endif /* src: size_t dst: unsigned */
1068 
1069 /* src: size_t, dst: int */
1070 #if H5_SIZEOF_SIZE_T < H5_SIZEOF_INT
1071  #define ASSIGN_size_t_TO_int(dst, dsttype, src, srctype) \
1072  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1073 #elif H5_SIZEOF_SIZE_T > H5_SIZEOF_INT
1074  #define ASSIGN_size_t_TO_int(dst, dsttype, src, srctype) \
1075  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1076 #else /* H5_SIZEOF_SIZE_T == H5_SIZEOF_INT */
1077  #define ASSIGN_size_t_TO_int(dst, dsttype, src, srctype) \
1078  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1079 #endif /* src: size_t dst: int */
1080 
1081 /* src: size_t, dst: uint8_t */
1082 #if H5_SIZEOF_SIZE_T < H5_SIZEOF_UINT8_T
1083  #define ASSIGN_size_t_TO_uint8_t(dst, dsttype, src, srctype) \
1084  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1085 #elif H5_SIZEOF_SIZE_T > H5_SIZEOF_UINT8_T
1086  #define ASSIGN_size_t_TO_uint8_t(dst, dsttype, src, srctype) \
1087  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1088 #else /* H5_SIZEOF_SIZE_T == H5_SIZEOF_UINT8_T */
1089  #define ASSIGN_size_t_TO_uint8_t(dst, dsttype, src, srctype) \
1090  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1091 #endif /* src: size_t dst: uint8_t */
1092 
1093 /* src: size_t, dst: uint16_t */
1094 #if H5_SIZEOF_SIZE_T < H5_SIZEOF_UINT16_T
1095  #define ASSIGN_size_t_TO_uint16_t(dst, dsttype, src, srctype) \
1096  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1097 #elif H5_SIZEOF_SIZE_T > H5_SIZEOF_UINT16_T
1098  #define ASSIGN_size_t_TO_uint16_t(dst, dsttype, src, srctype) \
1099  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1100 #else /* H5_SIZEOF_SIZE_T == H5_SIZEOF_UINT16_T */
1101  #define ASSIGN_size_t_TO_uint16_t(dst, dsttype, src, srctype) \
1102  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1103 #endif /* src: size_t dst: uint16_t */
1104 
1105 /* src: size_t, dst: uint32_t */
1106 #if H5_SIZEOF_SIZE_T < H5_SIZEOF_UINT32_T
1107  #define ASSIGN_size_t_TO_uint32_t(dst, dsttype, src, srctype) \
1108  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1109 #elif H5_SIZEOF_SIZE_T > H5_SIZEOF_UINT32_T
1110  #define ASSIGN_size_t_TO_uint32_t(dst, dsttype, src, srctype) \
1111  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1112 #else /* H5_SIZEOF_SIZE_T == H5_SIZEOF_UINT32_T */
1113  #define ASSIGN_size_t_TO_uint32_t(dst, dsttype, src, srctype) \
1114  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1115 #endif /* src: size_t dst: uint32_t */
1116 
1117 /* src: size_t, dst: uint64_t */
1118 #if H5_SIZEOF_SIZE_T < H5_SIZEOF_UINT64_T
1119  #define ASSIGN_size_t_TO_uint64_t(dst, dsttype, src, srctype) \
1120  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1121 #elif H5_SIZEOF_SIZE_T > H5_SIZEOF_UINT64_T
1122  #define ASSIGN_size_t_TO_uint64_t(dst, dsttype, src, srctype) \
1123  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1124 #else /* H5_SIZEOF_SIZE_T == H5_SIZEOF_UINT64_T */
1125  #define ASSIGN_size_t_TO_uint64_t(dst, dsttype, src, srctype) \
1126  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1127 #endif /* src: size_t dst: uint64_t */
1128 
1129 /* src: size_t, dst: ptrdiff_t */
1130 #if H5_SIZEOF_SIZE_T < H5_SIZEOF_PTRDIFF_T
1131  #define ASSIGN_size_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1132  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1133 #elif H5_SIZEOF_SIZE_T > H5_SIZEOF_PTRDIFF_T
1134  #define ASSIGN_size_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1135  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1136 #else /* H5_SIZEOF_SIZE_T == H5_SIZEOF_PTRDIFF_T */
1137  #define ASSIGN_size_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1138  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1139 #endif /* src: size_t dst: ptrdiff_t */
1140 
1141 /* src: size_t, dst: ssize_t */
1142 #if H5_SIZEOF_SIZE_T < H5_SIZEOF_SSIZE_T
1143  #define ASSIGN_size_t_TO_ssize_t(dst, dsttype, src, srctype) \
1144  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1145 #elif H5_SIZEOF_SIZE_T > H5_SIZEOF_SSIZE_T
1146  #define ASSIGN_size_t_TO_ssize_t(dst, dsttype, src, srctype) \
1147  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1148 #else /* H5_SIZEOF_SIZE_T == H5_SIZEOF_SSIZE_T */
1149  #define ASSIGN_size_t_TO_ssize_t(dst, dsttype, src, srctype) \
1150  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1151 #endif /* src: size_t dst: ssize_t */
1152 
1153 /* src: size_t, dst: haddr_t */
1154 #if H5_SIZEOF_SIZE_T < H5_SIZEOF_HADDR_T
1155  #define ASSIGN_size_t_TO_haddr_t(dst, dsttype, src, srctype) \
1156  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1157 #elif H5_SIZEOF_SIZE_T > H5_SIZEOF_HADDR_T
1158  #define ASSIGN_size_t_TO_haddr_t(dst, dsttype, src, srctype) \
1159  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1160 #else /* H5_SIZEOF_SIZE_T == H5_SIZEOF_HADDR_T */
1161  #define ASSIGN_size_t_TO_haddr_t(dst, dsttype, src, srctype) \
1162  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1163 #endif /* src: size_t dst: haddr_t */
1164 
1165 /* src: size_t, dst: hsize_t */
1166 #if H5_SIZEOF_SIZE_T < H5_SIZEOF_HSIZE_T
1167  #define ASSIGN_size_t_TO_hsize_t(dst, dsttype, src, srctype) \
1168  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1169 #elif H5_SIZEOF_SIZE_T > H5_SIZEOF_HSIZE_T
1170  #define ASSIGN_size_t_TO_hsize_t(dst, dsttype, src, srctype) \
1171  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1172 #else /* H5_SIZEOF_SIZE_T == H5_SIZEOF_HSIZE_T */
1173  #define ASSIGN_size_t_TO_hsize_t(dst, dsttype, src, srctype) \
1174  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1175 #endif /* src: size_t dst: hsize_t */
1176 
1177 /* src: size_t, dst: hssize_t */
1178 #if H5_SIZEOF_SIZE_T < H5_SIZEOF_HSSIZE_T
1179  #define ASSIGN_size_t_TO_hssize_t(dst, dsttype, src, srctype) \
1180  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1181 #elif H5_SIZEOF_SIZE_T > H5_SIZEOF_HSSIZE_T
1182  #define ASSIGN_size_t_TO_hssize_t(dst, dsttype, src, srctype) \
1183  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1184 #else /* H5_SIZEOF_SIZE_T == H5_SIZEOF_HSSIZE_T */
1185  #define ASSIGN_size_t_TO_hssize_t(dst, dsttype, src, srctype) \
1186  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1187 #endif /* src: size_t dst: hssize_t */
1188 
1189 /* src: size_t, dst: h5_stat_size_t */
1190 #if H5_SIZEOF_SIZE_T < H5_SIZEOF_H5_STAT_SIZE_T
1191  #define ASSIGN_size_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1192  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1193 #elif H5_SIZEOF_SIZE_T > H5_SIZEOF_H5_STAT_SIZE_T
1194  #define ASSIGN_size_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1195  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1196 #else /* H5_SIZEOF_SIZE_T == H5_SIZEOF_H5_STAT_SIZE_T */
1197  #define ASSIGN_size_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1198  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1199 #endif /* src: size_t dst: h5_stat_size_t */
1200 
1201 
1202 /* Assignment checks for ssize_t */
1203 
1204 /* src: ssize_t, dst: unsigned */
1205 #if H5_SIZEOF_SSIZE_T < H5_SIZEOF_UNSIGNED
1206  #define ASSIGN_ssize_t_TO_unsigned(dst, dsttype, src, srctype) \
1207  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1208 #elif H5_SIZEOF_SSIZE_T > H5_SIZEOF_UNSIGNED
1209  #define ASSIGN_ssize_t_TO_unsigned(dst, dsttype, src, srctype) \
1210  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1211 #else /* H5_SIZEOF_SSIZE_T == H5_SIZEOF_UNSIGNED */
1212  #define ASSIGN_ssize_t_TO_unsigned(dst, dsttype, src, srctype) \
1213  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1214 #endif /* src: ssize_t dst: unsigned */
1215 
1216 /* src: ssize_t, dst: int */
1217 #if H5_SIZEOF_SSIZE_T < H5_SIZEOF_INT
1218  #define ASSIGN_ssize_t_TO_int(dst, dsttype, src, srctype) \
1219  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1220 #elif H5_SIZEOF_SSIZE_T > H5_SIZEOF_INT
1221  #define ASSIGN_ssize_t_TO_int(dst, dsttype, src, srctype) \
1222  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1223 #else /* H5_SIZEOF_SSIZE_T == H5_SIZEOF_INT */
1224  #define ASSIGN_ssize_t_TO_int(dst, dsttype, src, srctype) \
1225  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1226 #endif /* src: ssize_t dst: int */
1227 
1228 /* src: ssize_t, dst: uint8_t */
1229 #if H5_SIZEOF_SSIZE_T < H5_SIZEOF_UINT8_T
1230  #define ASSIGN_ssize_t_TO_uint8_t(dst, dsttype, src, srctype) \
1231  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1232 #elif H5_SIZEOF_SSIZE_T > H5_SIZEOF_UINT8_T
1233  #define ASSIGN_ssize_t_TO_uint8_t(dst, dsttype, src, srctype) \
1234  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1235 #else /* H5_SIZEOF_SSIZE_T == H5_SIZEOF_UINT8_T */
1236  #define ASSIGN_ssize_t_TO_uint8_t(dst, dsttype, src, srctype) \
1237  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1238 #endif /* src: ssize_t dst: uint8_t */
1239 
1240 /* src: ssize_t, dst: uint16_t */
1241 #if H5_SIZEOF_SSIZE_T < H5_SIZEOF_UINT16_T
1242  #define ASSIGN_ssize_t_TO_uint16_t(dst, dsttype, src, srctype) \
1243  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1244 #elif H5_SIZEOF_SSIZE_T > H5_SIZEOF_UINT16_T
1245  #define ASSIGN_ssize_t_TO_uint16_t(dst, dsttype, src, srctype) \
1246  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1247 #else /* H5_SIZEOF_SSIZE_T == H5_SIZEOF_UINT16_T */
1248  #define ASSIGN_ssize_t_TO_uint16_t(dst, dsttype, src, srctype) \
1249  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1250 #endif /* src: ssize_t dst: uint16_t */
1251 
1252 /* src: ssize_t, dst: uint32_t */
1253 #if H5_SIZEOF_SSIZE_T < H5_SIZEOF_UINT32_T
1254  #define ASSIGN_ssize_t_TO_uint32_t(dst, dsttype, src, srctype) \
1255  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1256 #elif H5_SIZEOF_SSIZE_T > H5_SIZEOF_UINT32_T
1257  #define ASSIGN_ssize_t_TO_uint32_t(dst, dsttype, src, srctype) \
1258  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1259 #else /* H5_SIZEOF_SSIZE_T == H5_SIZEOF_UINT32_T */
1260  #define ASSIGN_ssize_t_TO_uint32_t(dst, dsttype, src, srctype) \
1261  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1262 #endif /* src: ssize_t dst: uint32_t */
1263 
1264 /* src: ssize_t, dst: uint64_t */
1265 #if H5_SIZEOF_SSIZE_T < H5_SIZEOF_UINT64_T
1266  #define ASSIGN_ssize_t_TO_uint64_t(dst, dsttype, src, srctype) \
1267  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1268 #elif H5_SIZEOF_SSIZE_T > H5_SIZEOF_UINT64_T
1269  #define ASSIGN_ssize_t_TO_uint64_t(dst, dsttype, src, srctype) \
1270  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1271 #else /* H5_SIZEOF_SSIZE_T == H5_SIZEOF_UINT64_T */
1272  #define ASSIGN_ssize_t_TO_uint64_t(dst, dsttype, src, srctype) \
1273  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1274 #endif /* src: ssize_t dst: uint64_t */
1275 
1276 /* src: ssize_t, dst: ptrdiff_t */
1277 #if H5_SIZEOF_SSIZE_T < H5_SIZEOF_PTRDIFF_T
1278  #define ASSIGN_ssize_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1279  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1280 #elif H5_SIZEOF_SSIZE_T > H5_SIZEOF_PTRDIFF_T
1281  #define ASSIGN_ssize_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1282  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1283 #else /* H5_SIZEOF_SSIZE_T == H5_SIZEOF_PTRDIFF_T */
1284  #define ASSIGN_ssize_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1285  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1286 #endif /* src: ssize_t dst: ptrdiff_t */
1287 
1288 /* src: ssize_t, dst: size_t */
1289 #if H5_SIZEOF_SSIZE_T < H5_SIZEOF_SIZE_T
1290  #define ASSIGN_ssize_t_TO_size_t(dst, dsttype, src, srctype) \
1291  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1292 #elif H5_SIZEOF_SSIZE_T > H5_SIZEOF_SIZE_T
1293  #define ASSIGN_ssize_t_TO_size_t(dst, dsttype, src, srctype) \
1294  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1295 #else /* H5_SIZEOF_SSIZE_T == H5_SIZEOF_SIZE_T */
1296  #define ASSIGN_ssize_t_TO_size_t(dst, dsttype, src, srctype) \
1297  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1298 #endif /* src: ssize_t dst: size_t */
1299 
1300 /* src: ssize_t, dst: haddr_t */
1301 #if H5_SIZEOF_SSIZE_T < H5_SIZEOF_HADDR_T
1302  #define ASSIGN_ssize_t_TO_haddr_t(dst, dsttype, src, srctype) \
1303  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1304 #elif H5_SIZEOF_SSIZE_T > H5_SIZEOF_HADDR_T
1305  #define ASSIGN_ssize_t_TO_haddr_t(dst, dsttype, src, srctype) \
1306  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1307 #else /* H5_SIZEOF_SSIZE_T == H5_SIZEOF_HADDR_T */
1308  #define ASSIGN_ssize_t_TO_haddr_t(dst, dsttype, src, srctype) \
1309  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1310 #endif /* src: ssize_t dst: haddr_t */
1311 
1312 /* src: ssize_t, dst: hsize_t */
1313 #if H5_SIZEOF_SSIZE_T < H5_SIZEOF_HSIZE_T
1314  #define ASSIGN_ssize_t_TO_hsize_t(dst, dsttype, src, srctype) \
1315  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1316 #elif H5_SIZEOF_SSIZE_T > H5_SIZEOF_HSIZE_T
1317  #define ASSIGN_ssize_t_TO_hsize_t(dst, dsttype, src, srctype) \
1318  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1319 #else /* H5_SIZEOF_SSIZE_T == H5_SIZEOF_HSIZE_T */
1320  #define ASSIGN_ssize_t_TO_hsize_t(dst, dsttype, src, srctype) \
1321  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1322 #endif /* src: ssize_t dst: hsize_t */
1323 
1324 /* src: ssize_t, dst: hssize_t */
1325 #if H5_SIZEOF_SSIZE_T < H5_SIZEOF_HSSIZE_T
1326  #define ASSIGN_ssize_t_TO_hssize_t(dst, dsttype, src, srctype) \
1327  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1328 #elif H5_SIZEOF_SSIZE_T > H5_SIZEOF_HSSIZE_T
1329  #define ASSIGN_ssize_t_TO_hssize_t(dst, dsttype, src, srctype) \
1330  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1331 #else /* H5_SIZEOF_SSIZE_T == H5_SIZEOF_HSSIZE_T */
1332  #define ASSIGN_ssize_t_TO_hssize_t(dst, dsttype, src, srctype) \
1333  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1334 #endif /* src: ssize_t dst: hssize_t */
1335 
1336 /* src: ssize_t, dst: h5_stat_size_t */
1337 #if H5_SIZEOF_SSIZE_T < H5_SIZEOF_H5_STAT_SIZE_T
1338  #define ASSIGN_ssize_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1339  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1340 #elif H5_SIZEOF_SSIZE_T > H5_SIZEOF_H5_STAT_SIZE_T
1341  #define ASSIGN_ssize_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1342  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1343 #else /* H5_SIZEOF_SSIZE_T == H5_SIZEOF_H5_STAT_SIZE_T */
1344  #define ASSIGN_ssize_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1345  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1346 #endif /* src: ssize_t dst: h5_stat_size_t */
1347 
1348 
1349 /* Assignment checks for haddr_t */
1350 
1351 /* src: haddr_t, dst: unsigned */
1352 #if H5_SIZEOF_HADDR_T < H5_SIZEOF_UNSIGNED
1353  #define ASSIGN_haddr_t_TO_unsigned(dst, dsttype, src, srctype) \
1354  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1355 #elif H5_SIZEOF_HADDR_T > H5_SIZEOF_UNSIGNED
1356  #define ASSIGN_haddr_t_TO_unsigned(dst, dsttype, src, srctype) \
1357  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1358 #else /* H5_SIZEOF_HADDR_T == H5_SIZEOF_UNSIGNED */
1359  #define ASSIGN_haddr_t_TO_unsigned(dst, dsttype, src, srctype) \
1360  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1361 #endif /* src: haddr_t dst: unsigned */
1362 
1363 /* src: haddr_t, dst: int */
1364 #if H5_SIZEOF_HADDR_T < H5_SIZEOF_INT
1365  #define ASSIGN_haddr_t_TO_int(dst, dsttype, src, srctype) \
1366  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1367 #elif H5_SIZEOF_HADDR_T > H5_SIZEOF_INT
1368  #define ASSIGN_haddr_t_TO_int(dst, dsttype, src, srctype) \
1369  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1370 #else /* H5_SIZEOF_HADDR_T == H5_SIZEOF_INT */
1371  #define ASSIGN_haddr_t_TO_int(dst, dsttype, src, srctype) \
1372  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1373 #endif /* src: haddr_t dst: int */
1374 
1375 /* src: haddr_t, dst: uint8_t */
1376 #if H5_SIZEOF_HADDR_T < H5_SIZEOF_UINT8_T
1377  #define ASSIGN_haddr_t_TO_uint8_t(dst, dsttype, src, srctype) \
1378  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1379 #elif H5_SIZEOF_HADDR_T > H5_SIZEOF_UINT8_T
1380  #define ASSIGN_haddr_t_TO_uint8_t(dst, dsttype, src, srctype) \
1381  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1382 #else /* H5_SIZEOF_HADDR_T == H5_SIZEOF_UINT8_T */
1383  #define ASSIGN_haddr_t_TO_uint8_t(dst, dsttype, src, srctype) \
1384  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1385 #endif /* src: haddr_t dst: uint8_t */
1386 
1387 /* src: haddr_t, dst: uint16_t */
1388 #if H5_SIZEOF_HADDR_T < H5_SIZEOF_UINT16_T
1389  #define ASSIGN_haddr_t_TO_uint16_t(dst, dsttype, src, srctype) \
1390  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1391 #elif H5_SIZEOF_HADDR_T > H5_SIZEOF_UINT16_T
1392  #define ASSIGN_haddr_t_TO_uint16_t(dst, dsttype, src, srctype) \
1393  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1394 #else /* H5_SIZEOF_HADDR_T == H5_SIZEOF_UINT16_T */
1395  #define ASSIGN_haddr_t_TO_uint16_t(dst, dsttype, src, srctype) \
1396  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1397 #endif /* src: haddr_t dst: uint16_t */
1398 
1399 /* src: haddr_t, dst: uint32_t */
1400 #if H5_SIZEOF_HADDR_T < H5_SIZEOF_UINT32_T
1401  #define ASSIGN_haddr_t_TO_uint32_t(dst, dsttype, src, srctype) \
1402  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1403 #elif H5_SIZEOF_HADDR_T > H5_SIZEOF_UINT32_T
1404  #define ASSIGN_haddr_t_TO_uint32_t(dst, dsttype, src, srctype) \
1405  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1406 #else /* H5_SIZEOF_HADDR_T == H5_SIZEOF_UINT32_T */
1407  #define ASSIGN_haddr_t_TO_uint32_t(dst, dsttype, src, srctype) \
1408  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1409 #endif /* src: haddr_t dst: uint32_t */
1410 
1411 /* src: haddr_t, dst: uint64_t */
1412 #if H5_SIZEOF_HADDR_T < H5_SIZEOF_UINT64_T
1413  #define ASSIGN_haddr_t_TO_uint64_t(dst, dsttype, src, srctype) \
1414  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1415 #elif H5_SIZEOF_HADDR_T > H5_SIZEOF_UINT64_T
1416  #define ASSIGN_haddr_t_TO_uint64_t(dst, dsttype, src, srctype) \
1417  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1418 #else /* H5_SIZEOF_HADDR_T == H5_SIZEOF_UINT64_T */
1419  #define ASSIGN_haddr_t_TO_uint64_t(dst, dsttype, src, srctype) \
1420  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1421 #endif /* src: haddr_t dst: uint64_t */
1422 
1423 /* src: haddr_t, dst: ptrdiff_t */
1424 #if H5_SIZEOF_HADDR_T < H5_SIZEOF_PTRDIFF_T
1425  #define ASSIGN_haddr_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1426  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1427 #elif H5_SIZEOF_HADDR_T > H5_SIZEOF_PTRDIFF_T
1428  #define ASSIGN_haddr_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1429  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1430 #else /* H5_SIZEOF_HADDR_T == H5_SIZEOF_PTRDIFF_T */
1431  #define ASSIGN_haddr_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1432  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1433 #endif /* src: haddr_t dst: ptrdiff_t */
1434 
1435 /* src: haddr_t, dst: size_t */
1436 #if H5_SIZEOF_HADDR_T < H5_SIZEOF_SIZE_T
1437  #define ASSIGN_haddr_t_TO_size_t(dst, dsttype, src, srctype) \
1438  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1439 #elif H5_SIZEOF_HADDR_T > H5_SIZEOF_SIZE_T
1440  #define ASSIGN_haddr_t_TO_size_t(dst, dsttype, src, srctype) \
1441  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1442 #else /* H5_SIZEOF_HADDR_T == H5_SIZEOF_SIZE_T */
1443  #define ASSIGN_haddr_t_TO_size_t(dst, dsttype, src, srctype) \
1444  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1445 #endif /* src: haddr_t dst: size_t */
1446 
1447 /* src: haddr_t, dst: ssize_t */
1448 #if H5_SIZEOF_HADDR_T < H5_SIZEOF_SSIZE_T
1449  #define ASSIGN_haddr_t_TO_ssize_t(dst, dsttype, src, srctype) \
1450  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1451 #elif H5_SIZEOF_HADDR_T > H5_SIZEOF_SSIZE_T
1452  #define ASSIGN_haddr_t_TO_ssize_t(dst, dsttype, src, srctype) \
1453  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1454 #else /* H5_SIZEOF_HADDR_T == H5_SIZEOF_SSIZE_T */
1455  #define ASSIGN_haddr_t_TO_ssize_t(dst, dsttype, src, srctype) \
1456  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1457 #endif /* src: haddr_t dst: ssize_t */
1458 
1459 /* src: haddr_t, dst: hsize_t */
1460 #if H5_SIZEOF_HADDR_T < H5_SIZEOF_HSIZE_T
1461  #define ASSIGN_haddr_t_TO_hsize_t(dst, dsttype, src, srctype) \
1462  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1463 #elif H5_SIZEOF_HADDR_T > H5_SIZEOF_HSIZE_T
1464  #define ASSIGN_haddr_t_TO_hsize_t(dst, dsttype, src, srctype) \
1465  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1466 #else /* H5_SIZEOF_HADDR_T == H5_SIZEOF_HSIZE_T */
1467  #define ASSIGN_haddr_t_TO_hsize_t(dst, dsttype, src, srctype) \
1468  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1469 #endif /* src: haddr_t dst: hsize_t */
1470 
1471 /* src: haddr_t, dst: hssize_t */
1472 #if H5_SIZEOF_HADDR_T < H5_SIZEOF_HSSIZE_T
1473  #define ASSIGN_haddr_t_TO_hssize_t(dst, dsttype, src, srctype) \
1474  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1475 #elif H5_SIZEOF_HADDR_T > H5_SIZEOF_HSSIZE_T
1476  #define ASSIGN_haddr_t_TO_hssize_t(dst, dsttype, src, srctype) \
1477  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1478 #else /* H5_SIZEOF_HADDR_T == H5_SIZEOF_HSSIZE_T */
1479  #define ASSIGN_haddr_t_TO_hssize_t(dst, dsttype, src, srctype) \
1480  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1481 #endif /* src: haddr_t dst: hssize_t */
1482 
1483 /* src: haddr_t, dst: h5_stat_size_t */
1484 #if H5_SIZEOF_HADDR_T < H5_SIZEOF_H5_STAT_SIZE_T
1485  #define ASSIGN_haddr_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1486  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1487 #elif H5_SIZEOF_HADDR_T > H5_SIZEOF_H5_STAT_SIZE_T
1488  #define ASSIGN_haddr_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1489  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1490 #else /* H5_SIZEOF_HADDR_T == H5_SIZEOF_H5_STAT_SIZE_T */
1491  #define ASSIGN_haddr_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1492  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1493 #endif /* src: haddr_t dst: h5_stat_size_t */
1494 
1495 
1496 /* Assignment checks for hsize_t */
1497 
1498 /* src: hsize_t, dst: unsigned */
1499 #if H5_SIZEOF_HSIZE_T < H5_SIZEOF_UNSIGNED
1500  #define ASSIGN_hsize_t_TO_unsigned(dst, dsttype, src, srctype) \
1501  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1502 #elif H5_SIZEOF_HSIZE_T > H5_SIZEOF_UNSIGNED
1503  #define ASSIGN_hsize_t_TO_unsigned(dst, dsttype, src, srctype) \
1504  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1505 #else /* H5_SIZEOF_HSIZE_T == H5_SIZEOF_UNSIGNED */
1506  #define ASSIGN_hsize_t_TO_unsigned(dst, dsttype, src, srctype) \
1507  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1508 #endif /* src: hsize_t dst: unsigned */
1509 
1510 /* src: hsize_t, dst: int */
1511 #if H5_SIZEOF_HSIZE_T < H5_SIZEOF_INT
1512  #define ASSIGN_hsize_t_TO_int(dst, dsttype, src, srctype) \
1513  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1514 #elif H5_SIZEOF_HSIZE_T > H5_SIZEOF_INT
1515  #define ASSIGN_hsize_t_TO_int(dst, dsttype, src, srctype) \
1516  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1517 #else /* H5_SIZEOF_HSIZE_T == H5_SIZEOF_INT */
1518  #define ASSIGN_hsize_t_TO_int(dst, dsttype, src, srctype) \
1519  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1520 #endif /* src: hsize_t dst: int */
1521 
1522 /* src: hsize_t, dst: uint8_t */
1523 #if H5_SIZEOF_HSIZE_T < H5_SIZEOF_UINT8_T
1524  #define ASSIGN_hsize_t_TO_uint8_t(dst, dsttype, src, srctype) \
1525  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1526 #elif H5_SIZEOF_HSIZE_T > H5_SIZEOF_UINT8_T
1527  #define ASSIGN_hsize_t_TO_uint8_t(dst, dsttype, src, srctype) \
1528  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1529 #else /* H5_SIZEOF_HSIZE_T == H5_SIZEOF_UINT8_T */
1530  #define ASSIGN_hsize_t_TO_uint8_t(dst, dsttype, src, srctype) \
1531  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1532 #endif /* src: hsize_t dst: uint8_t */
1533 
1534 /* src: hsize_t, dst: uint16_t */
1535 #if H5_SIZEOF_HSIZE_T < H5_SIZEOF_UINT16_T
1536  #define ASSIGN_hsize_t_TO_uint16_t(dst, dsttype, src, srctype) \
1537  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1538 #elif H5_SIZEOF_HSIZE_T > H5_SIZEOF_UINT16_T
1539  #define ASSIGN_hsize_t_TO_uint16_t(dst, dsttype, src, srctype) \
1540  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1541 #else /* H5_SIZEOF_HSIZE_T == H5_SIZEOF_UINT16_T */
1542  #define ASSIGN_hsize_t_TO_uint16_t(dst, dsttype, src, srctype) \
1543  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1544 #endif /* src: hsize_t dst: uint16_t */
1545 
1546 /* src: hsize_t, dst: uint32_t */
1547 #if H5_SIZEOF_HSIZE_T < H5_SIZEOF_UINT32_T
1548  #define ASSIGN_hsize_t_TO_uint32_t(dst, dsttype, src, srctype) \
1549  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1550 #elif H5_SIZEOF_HSIZE_T > H5_SIZEOF_UINT32_T
1551  #define ASSIGN_hsize_t_TO_uint32_t(dst, dsttype, src, srctype) \
1552  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1553 #else /* H5_SIZEOF_HSIZE_T == H5_SIZEOF_UINT32_T */
1554  #define ASSIGN_hsize_t_TO_uint32_t(dst, dsttype, src, srctype) \
1555  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1556 #endif /* src: hsize_t dst: uint32_t */
1557 
1558 /* src: hsize_t, dst: uint64_t */
1559 #if H5_SIZEOF_HSIZE_T < H5_SIZEOF_UINT64_T
1560  #define ASSIGN_hsize_t_TO_uint64_t(dst, dsttype, src, srctype) \
1561  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1562 #elif H5_SIZEOF_HSIZE_T > H5_SIZEOF_UINT64_T
1563  #define ASSIGN_hsize_t_TO_uint64_t(dst, dsttype, src, srctype) \
1564  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1565 #else /* H5_SIZEOF_HSIZE_T == H5_SIZEOF_UINT64_T */
1566  #define ASSIGN_hsize_t_TO_uint64_t(dst, dsttype, src, srctype) \
1567  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1568 #endif /* src: hsize_t dst: uint64_t */
1569 
1570 /* src: hsize_t, dst: ptrdiff_t */
1571 #if H5_SIZEOF_HSIZE_T < H5_SIZEOF_PTRDIFF_T
1572  #define ASSIGN_hsize_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1573  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1574 #elif H5_SIZEOF_HSIZE_T > H5_SIZEOF_PTRDIFF_T
1575  #define ASSIGN_hsize_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1576  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1577 #else /* H5_SIZEOF_HSIZE_T == H5_SIZEOF_PTRDIFF_T */
1578  #define ASSIGN_hsize_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1579  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1580 #endif /* src: hsize_t dst: ptrdiff_t */
1581 
1582 /* src: hsize_t, dst: size_t */
1583 #if H5_SIZEOF_HSIZE_T < H5_SIZEOF_SIZE_T
1584  #define ASSIGN_hsize_t_TO_size_t(dst, dsttype, src, srctype) \
1585  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1586 #elif H5_SIZEOF_HSIZE_T > H5_SIZEOF_SIZE_T
1587  #define ASSIGN_hsize_t_TO_size_t(dst, dsttype, src, srctype) \
1588  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1589 #else /* H5_SIZEOF_HSIZE_T == H5_SIZEOF_SIZE_T */
1590  #define ASSIGN_hsize_t_TO_size_t(dst, dsttype, src, srctype) \
1591  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1592 #endif /* src: hsize_t dst: size_t */
1593 
1594 /* src: hsize_t, dst: ssize_t */
1595 #if H5_SIZEOF_HSIZE_T < H5_SIZEOF_SSIZE_T
1596  #define ASSIGN_hsize_t_TO_ssize_t(dst, dsttype, src, srctype) \
1597  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1598 #elif H5_SIZEOF_HSIZE_T > H5_SIZEOF_SSIZE_T
1599  #define ASSIGN_hsize_t_TO_ssize_t(dst, dsttype, src, srctype) \
1600  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1601 #else /* H5_SIZEOF_HSIZE_T == H5_SIZEOF_SSIZE_T */
1602  #define ASSIGN_hsize_t_TO_ssize_t(dst, dsttype, src, srctype) \
1603  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1604 #endif /* src: hsize_t dst: ssize_t */
1605 
1606 /* src: hsize_t, dst: haddr_t */
1607 #if H5_SIZEOF_HSIZE_T < H5_SIZEOF_HADDR_T
1608  #define ASSIGN_hsize_t_TO_haddr_t(dst, dsttype, src, srctype) \
1609  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1610 #elif H5_SIZEOF_HSIZE_T > H5_SIZEOF_HADDR_T
1611  #define ASSIGN_hsize_t_TO_haddr_t(dst, dsttype, src, srctype) \
1612  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1613 #else /* H5_SIZEOF_HSIZE_T == H5_SIZEOF_HADDR_T */
1614  #define ASSIGN_hsize_t_TO_haddr_t(dst, dsttype, src, srctype) \
1615  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1616 #endif /* src: hsize_t dst: haddr_t */
1617 
1618 /* src: hsize_t, dst: hssize_t */
1619 #if H5_SIZEOF_HSIZE_T < H5_SIZEOF_HSSIZE_T
1620  #define ASSIGN_hsize_t_TO_hssize_t(dst, dsttype, src, srctype) \
1621  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1622 #elif H5_SIZEOF_HSIZE_T > H5_SIZEOF_HSSIZE_T
1623  #define ASSIGN_hsize_t_TO_hssize_t(dst, dsttype, src, srctype) \
1624  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1625 #else /* H5_SIZEOF_HSIZE_T == H5_SIZEOF_HSSIZE_T */
1626  #define ASSIGN_hsize_t_TO_hssize_t(dst, dsttype, src, srctype) \
1627  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1628 #endif /* src: hsize_t dst: hssize_t */
1629 
1630 /* src: hsize_t, dst: h5_stat_size_t */
1631 #if H5_SIZEOF_HSIZE_T < H5_SIZEOF_H5_STAT_SIZE_T
1632  #define ASSIGN_hsize_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1633  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1634 #elif H5_SIZEOF_HSIZE_T > H5_SIZEOF_H5_STAT_SIZE_T
1635  #define ASSIGN_hsize_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1636  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1637 #else /* H5_SIZEOF_HSIZE_T == H5_SIZEOF_H5_STAT_SIZE_T */
1638  #define ASSIGN_hsize_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1639  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1640 #endif /* src: hsize_t dst: h5_stat_size_t */
1641 
1642 
1643 /* Assignment checks for hssize_t */
1644 
1645 /* src: hssize_t, dst: unsigned */
1646 #if H5_SIZEOF_HSSIZE_T < H5_SIZEOF_UNSIGNED
1647  #define ASSIGN_hssize_t_TO_unsigned(dst, dsttype, src, srctype) \
1648  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1649 #elif H5_SIZEOF_HSSIZE_T > H5_SIZEOF_UNSIGNED
1650  #define ASSIGN_hssize_t_TO_unsigned(dst, dsttype, src, srctype) \
1651  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1652 #else /* H5_SIZEOF_HSSIZE_T == H5_SIZEOF_UNSIGNED */
1653  #define ASSIGN_hssize_t_TO_unsigned(dst, dsttype, src, srctype) \
1654  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1655 #endif /* src: hssize_t dst: unsigned */
1656 
1657 /* src: hssize_t, dst: int */
1658 #if H5_SIZEOF_HSSIZE_T < H5_SIZEOF_INT
1659  #define ASSIGN_hssize_t_TO_int(dst, dsttype, src, srctype) \
1660  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1661 #elif H5_SIZEOF_HSSIZE_T > H5_SIZEOF_INT
1662  #define ASSIGN_hssize_t_TO_int(dst, dsttype, src, srctype) \
1663  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1664 #else /* H5_SIZEOF_HSSIZE_T == H5_SIZEOF_INT */
1665  #define ASSIGN_hssize_t_TO_int(dst, dsttype, src, srctype) \
1666  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1667 #endif /* src: hssize_t dst: int */
1668 
1669 /* src: hssize_t, dst: uint8_t */
1670 #if H5_SIZEOF_HSSIZE_T < H5_SIZEOF_UINT8_T
1671  #define ASSIGN_hssize_t_TO_uint8_t(dst, dsttype, src, srctype) \
1672  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1673 #elif H5_SIZEOF_HSSIZE_T > H5_SIZEOF_UINT8_T
1674  #define ASSIGN_hssize_t_TO_uint8_t(dst, dsttype, src, srctype) \
1675  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1676 #else /* H5_SIZEOF_HSSIZE_T == H5_SIZEOF_UINT8_T */
1677  #define ASSIGN_hssize_t_TO_uint8_t(dst, dsttype, src, srctype) \
1678  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1679 #endif /* src: hssize_t dst: uint8_t */
1680 
1681 /* src: hssize_t, dst: uint16_t */
1682 #if H5_SIZEOF_HSSIZE_T < H5_SIZEOF_UINT16_T
1683  #define ASSIGN_hssize_t_TO_uint16_t(dst, dsttype, src, srctype) \
1684  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1685 #elif H5_SIZEOF_HSSIZE_T > H5_SIZEOF_UINT16_T
1686  #define ASSIGN_hssize_t_TO_uint16_t(dst, dsttype, src, srctype) \
1687  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1688 #else /* H5_SIZEOF_HSSIZE_T == H5_SIZEOF_UINT16_T */
1689  #define ASSIGN_hssize_t_TO_uint16_t(dst, dsttype, src, srctype) \
1690  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1691 #endif /* src: hssize_t dst: uint16_t */
1692 
1693 /* src: hssize_t, dst: uint32_t */
1694 #if H5_SIZEOF_HSSIZE_T < H5_SIZEOF_UINT32_T
1695  #define ASSIGN_hssize_t_TO_uint32_t(dst, dsttype, src, srctype) \
1696  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1697 #elif H5_SIZEOF_HSSIZE_T > H5_SIZEOF_UINT32_T
1698  #define ASSIGN_hssize_t_TO_uint32_t(dst, dsttype, src, srctype) \
1699  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1700 #else /* H5_SIZEOF_HSSIZE_T == H5_SIZEOF_UINT32_T */
1701  #define ASSIGN_hssize_t_TO_uint32_t(dst, dsttype, src, srctype) \
1702  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1703 #endif /* src: hssize_t dst: uint32_t */
1704 
1705 /* src: hssize_t, dst: uint64_t */
1706 #if H5_SIZEOF_HSSIZE_T < H5_SIZEOF_UINT64_T
1707  #define ASSIGN_hssize_t_TO_uint64_t(dst, dsttype, src, srctype) \
1708  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1709 #elif H5_SIZEOF_HSSIZE_T > H5_SIZEOF_UINT64_T
1710  #define ASSIGN_hssize_t_TO_uint64_t(dst, dsttype, src, srctype) \
1711  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1712 #else /* H5_SIZEOF_HSSIZE_T == H5_SIZEOF_UINT64_T */
1713  #define ASSIGN_hssize_t_TO_uint64_t(dst, dsttype, src, srctype) \
1714  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1715 #endif /* src: hssize_t dst: uint64_t */
1716 
1717 /* src: hssize_t, dst: ptrdiff_t */
1718 #if H5_SIZEOF_HSSIZE_T < H5_SIZEOF_PTRDIFF_T
1719  #define ASSIGN_hssize_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1720  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1721 #elif H5_SIZEOF_HSSIZE_T > H5_SIZEOF_PTRDIFF_T
1722  #define ASSIGN_hssize_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1723  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1724 #else /* H5_SIZEOF_HSSIZE_T == H5_SIZEOF_PTRDIFF_T */
1725  #define ASSIGN_hssize_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1726  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1727 #endif /* src: hssize_t dst: ptrdiff_t */
1728 
1729 /* src: hssize_t, dst: size_t */
1730 #if H5_SIZEOF_HSSIZE_T < H5_SIZEOF_SIZE_T
1731  #define ASSIGN_hssize_t_TO_size_t(dst, dsttype, src, srctype) \
1732  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1733 #elif H5_SIZEOF_HSSIZE_T > H5_SIZEOF_SIZE_T
1734  #define ASSIGN_hssize_t_TO_size_t(dst, dsttype, src, srctype) \
1735  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1736 #else /* H5_SIZEOF_HSSIZE_T == H5_SIZEOF_SIZE_T */
1737  #define ASSIGN_hssize_t_TO_size_t(dst, dsttype, src, srctype) \
1738  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1739 #endif /* src: hssize_t dst: size_t */
1740 
1741 /* src: hssize_t, dst: ssize_t */
1742 #if H5_SIZEOF_HSSIZE_T < H5_SIZEOF_SSIZE_T
1743  #define ASSIGN_hssize_t_TO_ssize_t(dst, dsttype, src, srctype) \
1744  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1745 #elif H5_SIZEOF_HSSIZE_T > H5_SIZEOF_SSIZE_T
1746  #define ASSIGN_hssize_t_TO_ssize_t(dst, dsttype, src, srctype) \
1747  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1748 #else /* H5_SIZEOF_HSSIZE_T == H5_SIZEOF_SSIZE_T */
1749  #define ASSIGN_hssize_t_TO_ssize_t(dst, dsttype, src, srctype) \
1750  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1751 #endif /* src: hssize_t dst: ssize_t */
1752 
1753 /* src: hssize_t, dst: haddr_t */
1754 #if H5_SIZEOF_HSSIZE_T < H5_SIZEOF_HADDR_T
1755  #define ASSIGN_hssize_t_TO_haddr_t(dst, dsttype, src, srctype) \
1756  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1757 #elif H5_SIZEOF_HSSIZE_T > H5_SIZEOF_HADDR_T
1758  #define ASSIGN_hssize_t_TO_haddr_t(dst, dsttype, src, srctype) \
1759  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1760 #else /* H5_SIZEOF_HSSIZE_T == H5_SIZEOF_HADDR_T */
1761  #define ASSIGN_hssize_t_TO_haddr_t(dst, dsttype, src, srctype) \
1762  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1763 #endif /* src: hssize_t dst: haddr_t */
1764 
1765 /* src: hssize_t, dst: hsize_t */
1766 #if H5_SIZEOF_HSSIZE_T < H5_SIZEOF_HSIZE_T
1767  #define ASSIGN_hssize_t_TO_hsize_t(dst, dsttype, src, srctype) \
1768  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1769 #elif H5_SIZEOF_HSSIZE_T > H5_SIZEOF_HSIZE_T
1770  #define ASSIGN_hssize_t_TO_hsize_t(dst, dsttype, src, srctype) \
1771  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1772 #else /* H5_SIZEOF_HSSIZE_T == H5_SIZEOF_HSIZE_T */
1773  #define ASSIGN_hssize_t_TO_hsize_t(dst, dsttype, src, srctype) \
1774  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1775 #endif /* src: hssize_t dst: hsize_t */
1776 
1777 /* src: hssize_t, dst: h5_stat_size_t */
1778 #if H5_SIZEOF_HSSIZE_T < H5_SIZEOF_H5_STAT_SIZE_T
1779  #define ASSIGN_hssize_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1780  ASSIGN_TO_LARGER_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1781 #elif H5_SIZEOF_HSSIZE_T > H5_SIZEOF_H5_STAT_SIZE_T
1782  #define ASSIGN_hssize_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1783  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1784 #else /* H5_SIZEOF_HSSIZE_T == H5_SIZEOF_H5_STAT_SIZE_T */
1785  #define ASSIGN_hssize_t_TO_h5_stat_size_t(dst, dsttype, src, srctype) \
1786  ASSIGN_TO_SAME_SIZE_SIGNED_TO_UNSIGNED(dst, dsttype, src, srctype)
1787 #endif /* src: hssize_t dst: h5_stat_size_t */
1788 
1789 
1790 /* Assignment checks for h5_stat_size_t */
1791 
1792 /* src: h5_stat_size_t, dst: unsigned */
1793 #if H5_SIZEOF_H5_STAT_SIZE_T < H5_SIZEOF_UNSIGNED
1794  #define ASSIGN_h5_stat_size_t_TO_unsigned(dst, dsttype, src, srctype) \
1795  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1796 #elif H5_SIZEOF_H5_STAT_SIZE_T > H5_SIZEOF_UNSIGNED
1797  #define ASSIGN_h5_stat_size_t_TO_unsigned(dst, dsttype, src, srctype) \
1798  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1799 #else /* H5_SIZEOF_H5_STAT_SIZE_T == H5_SIZEOF_UNSIGNED */
1800  #define ASSIGN_h5_stat_size_t_TO_unsigned(dst, dsttype, src, srctype) \
1801  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1802 #endif /* src: h5_stat_size_t dst: unsigned */
1803 
1804 /* src: h5_stat_size_t, dst: int */
1805 #if H5_SIZEOF_H5_STAT_SIZE_T < H5_SIZEOF_INT
1806  #define ASSIGN_h5_stat_size_t_TO_int(dst, dsttype, src, srctype) \
1807  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1808 #elif H5_SIZEOF_H5_STAT_SIZE_T > H5_SIZEOF_INT
1809  #define ASSIGN_h5_stat_size_t_TO_int(dst, dsttype, src, srctype) \
1810  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1811 #else /* H5_SIZEOF_H5_STAT_SIZE_T == H5_SIZEOF_INT */
1812  #define ASSIGN_h5_stat_size_t_TO_int(dst, dsttype, src, srctype) \
1813  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1814 #endif /* src: h5_stat_size_t dst: int */
1815 
1816 /* src: h5_stat_size_t, dst: uint8_t */
1817 #if H5_SIZEOF_H5_STAT_SIZE_T < H5_SIZEOF_UINT8_T
1818  #define ASSIGN_h5_stat_size_t_TO_uint8_t(dst, dsttype, src, srctype) \
1819  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1820 #elif H5_SIZEOF_H5_STAT_SIZE_T > H5_SIZEOF_UINT8_T
1821  #define ASSIGN_h5_stat_size_t_TO_uint8_t(dst, dsttype, src, srctype) \
1822  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1823 #else /* H5_SIZEOF_H5_STAT_SIZE_T == H5_SIZEOF_UINT8_T */
1824  #define ASSIGN_h5_stat_size_t_TO_uint8_t(dst, dsttype, src, srctype) \
1825  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1826 #endif /* src: h5_stat_size_t dst: uint8_t */
1827 
1828 /* src: h5_stat_size_t, dst: uint16_t */
1829 #if H5_SIZEOF_H5_STAT_SIZE_T < H5_SIZEOF_UINT16_T
1830  #define ASSIGN_h5_stat_size_t_TO_uint16_t(dst, dsttype, src, srctype) \
1831  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1832 #elif H5_SIZEOF_H5_STAT_SIZE_T > H5_SIZEOF_UINT16_T
1833  #define ASSIGN_h5_stat_size_t_TO_uint16_t(dst, dsttype, src, srctype) \
1834  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1835 #else /* H5_SIZEOF_H5_STAT_SIZE_T == H5_SIZEOF_UINT16_T */
1836  #define ASSIGN_h5_stat_size_t_TO_uint16_t(dst, dsttype, src, srctype) \
1837  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1838 #endif /* src: h5_stat_size_t dst: uint16_t */
1839 
1840 /* src: h5_stat_size_t, dst: uint32_t */
1841 #if H5_SIZEOF_H5_STAT_SIZE_T < H5_SIZEOF_UINT32_T
1842  #define ASSIGN_h5_stat_size_t_TO_uint32_t(dst, dsttype, src, srctype) \
1843  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1844 #elif H5_SIZEOF_H5_STAT_SIZE_T > H5_SIZEOF_UINT32_T
1845  #define ASSIGN_h5_stat_size_t_TO_uint32_t(dst, dsttype, src, srctype) \
1846  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1847 #else /* H5_SIZEOF_H5_STAT_SIZE_T == H5_SIZEOF_UINT32_T */
1848  #define ASSIGN_h5_stat_size_t_TO_uint32_t(dst, dsttype, src, srctype) \
1849  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1850 #endif /* src: h5_stat_size_t dst: uint32_t */
1851 
1852 /* src: h5_stat_size_t, dst: uint64_t */
1853 #if H5_SIZEOF_H5_STAT_SIZE_T < H5_SIZEOF_UINT64_T
1854  #define ASSIGN_h5_stat_size_t_TO_uint64_t(dst, dsttype, src, srctype) \
1855  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1856 #elif H5_SIZEOF_H5_STAT_SIZE_T > H5_SIZEOF_UINT64_T
1857  #define ASSIGN_h5_stat_size_t_TO_uint64_t(dst, dsttype, src, srctype) \
1858  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1859 #else /* H5_SIZEOF_H5_STAT_SIZE_T == H5_SIZEOF_UINT64_T */
1860  #define ASSIGN_h5_stat_size_t_TO_uint64_t(dst, dsttype, src, srctype) \
1861  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1862 #endif /* src: h5_stat_size_t dst: uint64_t */
1863 
1864 /* src: h5_stat_size_t, dst: ptrdiff_t */
1865 #if H5_SIZEOF_H5_STAT_SIZE_T < H5_SIZEOF_PTRDIFF_T
1866  #define ASSIGN_h5_stat_size_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1867  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1868 #elif H5_SIZEOF_H5_STAT_SIZE_T > H5_SIZEOF_PTRDIFF_T
1869  #define ASSIGN_h5_stat_size_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1870  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1871 #else /* H5_SIZEOF_H5_STAT_SIZE_T == H5_SIZEOF_PTRDIFF_T */
1872  #define ASSIGN_h5_stat_size_t_TO_ptrdiff_t(dst, dsttype, src, srctype) \
1873  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1874 #endif /* src: h5_stat_size_t dst: ptrdiff_t */
1875 
1876 /* src: h5_stat_size_t, dst: size_t */
1877 #if H5_SIZEOF_H5_STAT_SIZE_T < H5_SIZEOF_SIZE_T
1878  #define ASSIGN_h5_stat_size_t_TO_size_t(dst, dsttype, src, srctype) \
1879  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1880 #elif H5_SIZEOF_H5_STAT_SIZE_T > H5_SIZEOF_SIZE_T
1881  #define ASSIGN_h5_stat_size_t_TO_size_t(dst, dsttype, src, srctype) \
1882  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1883 #else /* H5_SIZEOF_H5_STAT_SIZE_T == H5_SIZEOF_SIZE_T */
1884  #define ASSIGN_h5_stat_size_t_TO_size_t(dst, dsttype, src, srctype) \
1885  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1886 #endif /* src: h5_stat_size_t dst: size_t */
1887 
1888 /* src: h5_stat_size_t, dst: ssize_t */
1889 #if H5_SIZEOF_H5_STAT_SIZE_T < H5_SIZEOF_SSIZE_T
1890  #define ASSIGN_h5_stat_size_t_TO_ssize_t(dst, dsttype, src, srctype) \
1891  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1892 #elif H5_SIZEOF_H5_STAT_SIZE_T > H5_SIZEOF_SSIZE_T
1893  #define ASSIGN_h5_stat_size_t_TO_ssize_t(dst, dsttype, src, srctype) \
1894  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1895 #else /* H5_SIZEOF_H5_STAT_SIZE_T == H5_SIZEOF_SSIZE_T */
1896  #define ASSIGN_h5_stat_size_t_TO_ssize_t(dst, dsttype, src, srctype) \
1897  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1898 #endif /* src: h5_stat_size_t dst: ssize_t */
1899 
1900 /* src: h5_stat_size_t, dst: haddr_t */
1901 #if H5_SIZEOF_H5_STAT_SIZE_T < H5_SIZEOF_HADDR_T
1902  #define ASSIGN_h5_stat_size_t_TO_haddr_t(dst, dsttype, src, srctype) \
1903  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1904 #elif H5_SIZEOF_H5_STAT_SIZE_T > H5_SIZEOF_HADDR_T
1905  #define ASSIGN_h5_stat_size_t_TO_haddr_t(dst, dsttype, src, srctype) \
1906  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1907 #else /* H5_SIZEOF_H5_STAT_SIZE_T == H5_SIZEOF_HADDR_T */
1908  #define ASSIGN_h5_stat_size_t_TO_haddr_t(dst, dsttype, src, srctype) \
1909  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1910 #endif /* src: h5_stat_size_t dst: haddr_t */
1911 
1912 /* src: h5_stat_size_t, dst: hsize_t */
1913 #if H5_SIZEOF_H5_STAT_SIZE_T < H5_SIZEOF_HSIZE_T
1914  #define ASSIGN_h5_stat_size_t_TO_hsize_t(dst, dsttype, src, srctype) \
1915  ASSIGN_TO_LARGER_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1916 #elif H5_SIZEOF_H5_STAT_SIZE_T > H5_SIZEOF_HSIZE_T
1917  #define ASSIGN_h5_stat_size_t_TO_hsize_t(dst, dsttype, src, srctype) \
1918  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1919 #else /* H5_SIZEOF_H5_STAT_SIZE_T == H5_SIZEOF_HSIZE_T */
1920  #define ASSIGN_h5_stat_size_t_TO_hsize_t(dst, dsttype, src, srctype) \
1921  ASSIGN_TO_SAME_SIZE_SAME_SIGNED(dst, dsttype, src, srctype)
1922 #endif /* src: h5_stat_size_t dst: hsize_t */
1923 
1924 /* src: h5_stat_size_t, dst: hssize_t */
1925 #if H5_SIZEOF_H5_STAT_SIZE_T < H5_SIZEOF_HSSIZE_T
1926  #define ASSIGN_h5_stat_size_t_TO_hssize_t(dst, dsttype, src, srctype) \
1927  ASSIGN_TO_LARGER_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1928 #elif H5_SIZEOF_H5_STAT_SIZE_T > H5_SIZEOF_HSSIZE_T
1929  #define ASSIGN_h5_stat_size_t_TO_hssize_t(dst, dsttype, src, srctype) \
1930  ASSIGN_TO_SMALLER_SIZE(dst, dsttype, src, srctype)
1931 #else /* H5_SIZEOF_H5_STAT_SIZE_T == H5_SIZEOF_HSSIZE_T */
1932  #define ASSIGN_h5_stat_size_t_TO_hssize_t(dst, dsttype, src, srctype) \
1933  ASSIGN_TO_SAME_SIZE_UNSIGNED_TO_SIGNED(dst, dsttype, src, srctype)
1934 #endif /* src: h5_stat_size_t dst: hssize_t */
1935 
1936 #endif /* H5overflow_H */
1937 

MISR Toolkit - Copyright © 2005 - 2020 Jet Propulsion Laboratory
Generated on Fri Jun 19 2020 22:49:53