Mercurial > hg > octave-lojdl > gnulib-hg
annotate tests/test-stdint.c @ 17460:d11431703671
autoupdate
author | Karl Berry <karl@freefriends.org> |
---|---|
date | Fri, 09 Aug 2013 08:03:30 -0700 |
parents | e542fd46ad6f |
children |
rev | line source |
---|---|
6825 | 1 /* Test of <stdint.h> substitute. |
17249
e542fd46ad6f
maint: update all copyright year number ranges
Eric Blake <eblake@redhat.com>
parents:
16201
diff
changeset
|
2 Copyright (C) 2006-2013 Free Software Foundation, Inc. |
6825 | 3 |
9309
bbbbbf4cd1c5
Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible <bruno@clisp.org>
parents:
8891
diff
changeset
|
4 This program is free software: you can redistribute it and/or modify |
7139
adb21c293305
Add copyright notices to long-enough files that lack them, since
Paul Eggert <eggert@cs.ucla.edu>
parents:
6906
diff
changeset
|
5 it under the terms of the GNU General Public License as published by |
9309
bbbbbf4cd1c5
Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible <bruno@clisp.org>
parents:
8891
diff
changeset
|
6 the Free Software Foundation; either version 3 of the License, or |
bbbbbf4cd1c5
Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible <bruno@clisp.org>
parents:
8891
diff
changeset
|
7 (at your option) any later version. |
6825 | 8 |
9 This program is distributed in the hope that it will be useful, | |
10 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
7139
adb21c293305
Add copyright notices to long-enough files that lack them, since
Paul Eggert <eggert@cs.ucla.edu>
parents:
6906
diff
changeset
|
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
adb21c293305
Add copyright notices to long-enough files that lack them, since
Paul Eggert <eggert@cs.ucla.edu>
parents:
6906
diff
changeset
|
12 GNU General Public License for more details. |
6825 | 13 |
7139
adb21c293305
Add copyright notices to long-enough files that lack them, since
Paul Eggert <eggert@cs.ucla.edu>
parents:
6906
diff
changeset
|
14 You should have received a copy of the GNU General Public License |
9309
bbbbbf4cd1c5
Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible <bruno@clisp.org>
parents:
8891
diff
changeset
|
15 along with this program. If not, see <http://www.gnu.org/licenses/>. */ |
6825 | 16 |
17 /* Written by Bruno Haible <bruno@clisp.org>, 2006. */ | |
18 | |
8891
633babea5f62
Unconditionally include <config.h> in unit tests.
Eric Blake <ebb9@byu.net>
parents:
7888
diff
changeset
|
19 #include <config.h> |
6825 | 20 |
21 /* Whether to enable pedantic checks. */ | |
22 #define DO_PEDANTIC 0 | |
23 | |
24 #include <stdint.h> | |
25 | |
26 #include "verify.h" | |
27 #include "intprops.h" | |
28 | |
29 #if __GNUC__ >= 2 && DO_PEDANTIC | |
30 # define verify_same_types(expr1,expr2) \ | |
31 extern void _verify_func(__LINE__) (__typeof__ (expr1) *); \ | |
32 extern void _verify_func(__LINE__) (__typeof__ (expr2) *); | |
33 # define _verify_func(line) _verify_func2(line) | |
34 # define _verify_func2(line) verify_func_ ## line | |
35 #else | |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
36 # define verify_same_types(expr1,expr2) extern void verify_func (int) |
6825 | 37 #endif |
38 | |
39 /* 7.18.1.1. Exact-width integer types */ | |
40 /* 7.18.2.1. Limits of exact-width integer types */ | |
41 | |
42 int8_t a1[3] = { INT8_C (17), INT8_MIN, INT8_MAX }; | |
43 verify (TYPE_MINIMUM (int8_t) == INT8_MIN); | |
44 verify (TYPE_MAXIMUM (int8_t) == INT8_MAX); | |
45 verify_same_types (INT8_MIN, (int8_t) 0 + 0); | |
46 verify_same_types (INT8_MAX, (int8_t) 0 + 0); | |
47 | |
48 int16_t a2[3] = { INT16_C (17), INT16_MIN, INT16_MAX }; | |
49 verify (TYPE_MINIMUM (int16_t) == INT16_MIN); | |
50 verify (TYPE_MAXIMUM (int16_t) == INT16_MAX); | |
51 verify_same_types (INT16_MIN, (int16_t) 0 + 0); | |
52 verify_same_types (INT16_MAX, (int16_t) 0 + 0); | |
53 | |
54 int32_t a3[3] = { INT32_C (17), INT32_MIN, INT32_MAX }; | |
55 verify (TYPE_MINIMUM (int32_t) == INT32_MIN); | |
56 verify (TYPE_MAXIMUM (int32_t) == INT32_MAX); | |
57 verify_same_types (INT32_MIN, (int32_t) 0 + 0); | |
58 verify_same_types (INT32_MAX, (int32_t) 0 + 0); | |
59 | |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
60 #ifdef INT64_MAX |
6825 | 61 int64_t a4[3] = { INT64_C (17), INT64_MIN, INT64_MAX }; |
62 verify (TYPE_MINIMUM (int64_t) == INT64_MIN); | |
63 verify (TYPE_MAXIMUM (int64_t) == INT64_MAX); | |
64 verify_same_types (INT64_MIN, (int64_t) 0 + 0); | |
65 verify_same_types (INT64_MAX, (int64_t) 0 + 0); | |
66 #endif | |
67 | |
68 uint8_t b1[2] = { UINT8_C (17), UINT8_MAX }; | |
69 verify (TYPE_MAXIMUM (uint8_t) == UINT8_MAX); | |
70 verify_same_types (UINT8_MAX, (uint8_t) 0 + 0); | |
71 | |
72 uint16_t b2[2] = { UINT16_C (17), UINT16_MAX }; | |
73 verify (TYPE_MAXIMUM (uint16_t) == UINT16_MAX); | |
74 verify_same_types (UINT16_MAX, (uint16_t) 0 + 0); | |
75 | |
76 uint32_t b3[2] = { UINT32_C (17), UINT32_MAX }; | |
77 verify (TYPE_MAXIMUM (uint32_t) == UINT32_MAX); | |
78 verify_same_types (UINT32_MAX, (uint32_t) 0 + 0); | |
79 | |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
80 #ifdef UINT64_MAX |
6825 | 81 uint64_t b4[2] = { UINT64_C (17), UINT64_MAX }; |
82 verify (TYPE_MAXIMUM (uint64_t) == UINT64_MAX); | |
83 verify_same_types (UINT64_MAX, (uint64_t) 0 + 0); | |
84 #endif | |
85 | |
86 #if INT8_MIN && INT8_MAX && INT16_MIN && INT16_MAX && INT32_MIN && INT32_MAX | |
87 /* ok */ | |
88 #else | |
89 err or; | |
90 #endif | |
91 | |
92 #if UINT8_MAX && UINT16_MAX && UINT32_MAX | |
93 /* ok */ | |
94 #else | |
95 err or; | |
96 #endif | |
97 | |
98 /* 7.18.1.2. Minimum-width integer types */ | |
99 /* 7.18.2.2. Limits of minimum-width integer types */ | |
100 | |
101 int_least8_t c1[3] = { 17, INT_LEAST8_MIN, INT_LEAST8_MAX }; | |
102 verify (TYPE_MINIMUM (int_least8_t) == INT_LEAST8_MIN); | |
103 verify (TYPE_MAXIMUM (int_least8_t) == INT_LEAST8_MAX); | |
104 verify_same_types (INT_LEAST8_MIN, (int_least8_t) 0 + 0); | |
105 verify_same_types (INT_LEAST8_MAX, (int_least8_t) 0 + 0); | |
106 | |
107 int_least16_t c2[3] = { 17, INT_LEAST16_MIN, INT_LEAST16_MAX }; | |
108 verify (TYPE_MINIMUM (int_least16_t) == INT_LEAST16_MIN); | |
109 verify (TYPE_MAXIMUM (int_least16_t) == INT_LEAST16_MAX); | |
110 verify_same_types (INT_LEAST16_MIN, (int_least16_t) 0 + 0); | |
111 verify_same_types (INT_LEAST16_MAX, (int_least16_t) 0 + 0); | |
112 | |
113 int_least32_t c3[3] = { 17, INT_LEAST32_MIN, INT_LEAST32_MAX }; | |
114 verify (TYPE_MINIMUM (int_least32_t) == INT_LEAST32_MIN); | |
115 verify (TYPE_MAXIMUM (int_least32_t) == INT_LEAST32_MAX); | |
116 verify_same_types (INT_LEAST32_MIN, (int_least32_t) 0 + 0); | |
117 verify_same_types (INT_LEAST32_MAX, (int_least32_t) 0 + 0); | |
118 | |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
119 #ifdef INT_LEAST64_MAX |
6825 | 120 int_least64_t c4[3] = { 17, INT_LEAST64_MIN, INT_LEAST64_MAX }; |
121 verify (TYPE_MINIMUM (int_least64_t) == INT_LEAST64_MIN); | |
122 verify (TYPE_MAXIMUM (int_least64_t) == INT_LEAST64_MAX); | |
123 verify_same_types (INT_LEAST64_MIN, (int_least64_t) 0 + 0); | |
124 verify_same_types (INT_LEAST64_MAX, (int_least64_t) 0 + 0); | |
125 #endif | |
126 | |
127 uint_least8_t d1[2] = { 17, UINT_LEAST8_MAX }; | |
128 verify (TYPE_MAXIMUM (uint_least8_t) == UINT_LEAST8_MAX); | |
129 verify_same_types (UINT_LEAST8_MAX, (uint_least8_t) 0 + 0); | |
130 | |
131 uint_least16_t d2[2] = { 17, UINT_LEAST16_MAX }; | |
132 verify (TYPE_MAXIMUM (uint_least16_t) == UINT_LEAST16_MAX); | |
133 verify_same_types (UINT_LEAST16_MAX, (uint_least16_t) 0 + 0); | |
134 | |
135 uint_least32_t d3[2] = { 17, UINT_LEAST32_MAX }; | |
136 verify (TYPE_MAXIMUM (uint_least32_t) == UINT_LEAST32_MAX); | |
137 verify_same_types (UINT_LEAST32_MAX, (uint_least32_t) 0 + 0); | |
138 | |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
139 #ifdef UINT_LEAST64_MAX |
6825 | 140 uint_least64_t d4[2] = { 17, UINT_LEAST64_MAX }; |
141 verify (TYPE_MAXIMUM (uint_least64_t) == UINT_LEAST64_MAX); | |
142 verify_same_types (UINT_LEAST64_MAX, (uint_least64_t) 0 + 0); | |
143 #endif | |
144 | |
145 #if INT_LEAST8_MIN && INT_LEAST8_MAX && INT_LEAST16_MIN && INT_LEAST16_MAX && INT_LEAST32_MIN && INT_LEAST32_MAX | |
146 /* ok */ | |
147 #else | |
148 err or; | |
149 #endif | |
150 | |
151 #if UINT_LEAST8_MAX && UINT_LEAST16_MAX && UINT_LEAST32_MAX | |
152 /* ok */ | |
153 #else | |
154 err or; | |
155 #endif | |
156 | |
157 /* 7.18.1.3. Fastest minimum-width integer types */ | |
158 /* 7.18.2.3. Limits of fastest minimum-width integer types */ | |
159 | |
160 int_fast8_t e1[3] = { 17, INT_FAST8_MIN, INT_FAST8_MAX }; | |
161 verify (TYPE_MINIMUM (int_fast8_t) == INT_FAST8_MIN); | |
162 verify (TYPE_MAXIMUM (int_fast8_t) == INT_FAST8_MAX); | |
163 verify_same_types (INT_FAST8_MIN, (int_fast8_t) 0 + 0); | |
164 verify_same_types (INT_FAST8_MAX, (int_fast8_t) 0 + 0); | |
165 | |
166 int_fast16_t e2[3] = { 17, INT_FAST16_MIN, INT_FAST16_MAX }; | |
167 verify (TYPE_MINIMUM (int_fast16_t) == INT_FAST16_MIN); | |
168 verify (TYPE_MAXIMUM (int_fast16_t) == INT_FAST16_MAX); | |
169 verify_same_types (INT_FAST16_MIN, (int_fast16_t) 0 + 0); | |
170 verify_same_types (INT_FAST16_MAX, (int_fast16_t) 0 + 0); | |
171 | |
172 int_fast32_t e3[3] = { 17, INT_FAST32_MIN, INT_FAST32_MAX }; | |
173 verify (TYPE_MINIMUM (int_fast32_t) == INT_FAST32_MIN); | |
174 verify (TYPE_MAXIMUM (int_fast32_t) == INT_FAST32_MAX); | |
175 verify_same_types (INT_FAST32_MIN, (int_fast32_t) 0 + 0); | |
176 verify_same_types (INT_FAST32_MAX, (int_fast32_t) 0 + 0); | |
177 | |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
178 #ifdef INT_FAST64_MAX |
6825 | 179 int_fast64_t e4[3] = { 17, INT_FAST64_MIN, INT_FAST64_MAX }; |
180 verify (TYPE_MINIMUM (int_fast64_t) == INT_FAST64_MIN); | |
181 verify (TYPE_MAXIMUM (int_fast64_t) == INT_FAST64_MAX); | |
182 verify_same_types (INT_FAST64_MIN, (int_fast64_t) 0 + 0); | |
183 verify_same_types (INT_FAST64_MAX, (int_fast64_t) 0 + 0); | |
184 #endif | |
185 | |
186 uint_fast8_t f1[2] = { 17, UINT_FAST8_MAX }; | |
187 verify (TYPE_MAXIMUM (uint_fast8_t) == UINT_FAST8_MAX); | |
188 verify_same_types (UINT_FAST8_MAX, (uint_fast8_t) 0 + 0); | |
189 | |
190 uint_fast16_t f2[2] = { 17, UINT_FAST16_MAX }; | |
191 verify (TYPE_MAXIMUM (uint_fast16_t) == UINT_FAST16_MAX); | |
192 verify_same_types (UINT_FAST16_MAX, (uint_fast16_t) 0 + 0); | |
193 | |
194 uint_fast32_t f3[2] = { 17, UINT_FAST32_MAX }; | |
195 verify (TYPE_MAXIMUM (uint_fast32_t) == UINT_FAST32_MAX); | |
196 verify_same_types (UINT_FAST32_MAX, (uint_fast32_t) 0 + 0); | |
197 | |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
198 #ifdef UINT_FAST64_MAX |
6825 | 199 uint_fast64_t f4[2] = { 17, UINT_FAST64_MAX }; |
200 verify (TYPE_MAXIMUM (uint_fast64_t) == UINT_FAST64_MAX); | |
201 verify_same_types (UINT_FAST64_MAX, (uint_fast64_t) 0 + 0); | |
202 #endif | |
203 | |
204 #if INT_FAST8_MIN && INT_FAST8_MAX && INT_FAST16_MIN && INT_FAST16_MAX && INT_FAST32_MIN && INT_FAST32_MAX | |
205 /* ok */ | |
206 #else | |
207 err or; | |
208 #endif | |
209 | |
210 #if UINT_FAST8_MAX && UINT_FAST16_MAX && UINT_FAST32_MAX | |
211 /* ok */ | |
212 #else | |
213 err or; | |
214 #endif | |
215 | |
216 /* 7.18.1.4. Integer types capable of holding object pointers */ | |
217 /* 7.18.2.4. Limits of integer types capable of holding object pointers */ | |
218 | |
219 intptr_t g[3] = { 17, INTPTR_MIN, INTPTR_MAX }; | |
220 verify (TYPE_MINIMUM (intptr_t) == INTPTR_MIN); | |
221 verify (TYPE_MAXIMUM (intptr_t) == INTPTR_MAX); | |
222 verify_same_types (INTPTR_MIN, (intptr_t) 0 + 0); | |
223 verify_same_types (INTPTR_MAX, (intptr_t) 0 + 0); | |
224 | |
225 uintptr_t h[2] = { 17, UINTPTR_MAX }; | |
226 verify (TYPE_MAXIMUM (uintptr_t) == UINTPTR_MAX); | |
227 verify_same_types (UINTPTR_MAX, (uintptr_t) 0 + 0); | |
228 | |
229 #if INTPTR_MIN && INTPTR_MAX && UINTPTR_MAX | |
230 /* ok */ | |
231 #else | |
232 err or; | |
233 #endif | |
234 | |
235 /* 7.18.1.5. Greatest-width integer types */ | |
236 /* 7.18.2.5. Limits of greatest-width integer types */ | |
237 | |
238 intmax_t i[3] = { INTMAX_C (17), INTMAX_MIN, INTMAX_MAX }; | |
239 verify (TYPE_MINIMUM (intmax_t) == INTMAX_MIN); | |
240 verify (TYPE_MAXIMUM (intmax_t) == INTMAX_MAX); | |
241 verify_same_types (INTMAX_MIN, (intmax_t) 0 + 0); | |
242 verify_same_types (INTMAX_MAX, (intmax_t) 0 + 0); | |
243 | |
244 uintmax_t j[2] = { UINTMAX_C (17), UINTMAX_MAX }; | |
245 verify (TYPE_MAXIMUM (uintmax_t) == UINTMAX_MAX); | |
246 verify_same_types (UINTMAX_MAX, (uintmax_t) 0 + 0); | |
247 | |
10238
22aa2c7c5a43
Conditionally disable part of the test.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
248 /* As of 2007, Sun C and HP-UX 10.20 cc don't support 'long long' constants in |
22aa2c7c5a43
Conditionally disable part of the test.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
249 the preprocessor. */ |
22aa2c7c5a43
Conditionally disable part of the test.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
250 #if !(defined __SUNPRO_C || (defined __hpux && !defined __GNUC__)) |
6825 | 251 #if INTMAX_MIN && INTMAX_MAX && UINTMAX_MAX |
252 /* ok */ | |
253 #else | |
254 err or; | |
255 #endif | |
10238
22aa2c7c5a43
Conditionally disable part of the test.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
256 #endif |
6825 | 257 |
258 /* 7.18.3. Limits of other integer types */ | |
259 | |
260 #include <stddef.h> | |
261 | |
262 verify (TYPE_MINIMUM (ptrdiff_t) == PTRDIFF_MIN); | |
263 verify (TYPE_MAXIMUM (ptrdiff_t) == PTRDIFF_MAX); | |
264 verify_same_types (PTRDIFF_MIN, (ptrdiff_t) 0 + 0); | |
265 verify_same_types (PTRDIFF_MAX, (ptrdiff_t) 0 + 0); | |
266 | |
267 #if PTRDIFF_MIN && PTRDIFF_MAX | |
268 /* ok */ | |
269 #else | |
270 err or; | |
271 #endif | |
272 | |
273 #include <signal.h> | |
274 | |
275 verify (TYPE_MINIMUM (sig_atomic_t) == SIG_ATOMIC_MIN); | |
276 verify (TYPE_MAXIMUM (sig_atomic_t) == SIG_ATOMIC_MAX); | |
277 verify_same_types (SIG_ATOMIC_MIN, (sig_atomic_t) 0 + 0); | |
278 verify_same_types (SIG_ATOMIC_MAX, (sig_atomic_t) 0 + 0); | |
279 | |
280 #if SIG_ATOMIC_MIN != 17 && SIG_ATOMIC_MAX | |
281 /* ok */ | |
282 #else | |
283 err or; | |
284 #endif | |
285 | |
286 verify (TYPE_MAXIMUM (size_t) == SIZE_MAX); | |
287 verify_same_types (SIZE_MAX, (size_t) 0 + 0); | |
288 | |
289 #if SIZE_MAX | |
290 /* ok */ | |
291 #else | |
292 err or; | |
293 #endif | |
294 | |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
295 #if HAVE_WCHAR_T |
6825 | 296 verify (TYPE_MINIMUM (wchar_t) == WCHAR_MIN); |
297 verify (TYPE_MAXIMUM (wchar_t) == WCHAR_MAX); | |
298 verify_same_types (WCHAR_MIN, (wchar_t) 0 + 0); | |
299 verify_same_types (WCHAR_MAX, (wchar_t) 0 + 0); | |
300 | |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
301 # if WCHAR_MIN != 17 && WCHAR_MAX |
6825 | 302 /* ok */ |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
303 # else |
6825 | 304 err or; |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
305 # endif |
6825 | 306 #endif |
307 | |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
308 #if HAVE_WINT_T |
7888
b6376840b47b
* modules/fnmatch (Depends-on): Depend on wchar.
Eric Blake <ebb9@byu.net>
parents:
7139
diff
changeset
|
309 # include <wchar.h> |
6825 | 310 |
311 verify (TYPE_MINIMUM (wint_t) == WINT_MIN); | |
312 verify (TYPE_MAXIMUM (wint_t) == WINT_MAX); | |
313 verify_same_types (WINT_MIN, (wint_t) 0 + 0); | |
314 verify_same_types (WINT_MAX, (wint_t) 0 + 0); | |
315 | |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
316 # if WINT_MIN != 17 && WINT_MAX |
6825 | 317 /* ok */ |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
318 # else |
6825 | 319 err or; |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
320 # endif |
6825 | 321 #endif |
322 | |
323 /* 7.18.4. Macros for integer constants */ | |
324 | |
325 verify (INT8_C (17) == 17); | |
6861
b82bca6af622
Take into account ISO C 99 TC1.
Bruno Haible <bruno@clisp.org>
parents:
6825
diff
changeset
|
326 verify_same_types (INT8_C (17), (int_least8_t)0 + 0); |
6825 | 327 verify (UINT8_C (17) == 17); |
6861
b82bca6af622
Take into account ISO C 99 TC1.
Bruno Haible <bruno@clisp.org>
parents:
6825
diff
changeset
|
328 verify_same_types (UINT8_C (17), (uint_least8_t)0 + 0); |
6825 | 329 |
330 verify (INT16_C (17) == 17); | |
6861
b82bca6af622
Take into account ISO C 99 TC1.
Bruno Haible <bruno@clisp.org>
parents:
6825
diff
changeset
|
331 verify_same_types (INT16_C (17), (int_least16_t)0 + 0); |
6825 | 332 verify (UINT16_C (17) == 17); |
6861
b82bca6af622
Take into account ISO C 99 TC1.
Bruno Haible <bruno@clisp.org>
parents:
6825
diff
changeset
|
333 verify_same_types (UINT16_C (17), (uint_least16_t)0 + 0); |
6825 | 334 |
335 verify (INT32_C (17) == 17); | |
6861
b82bca6af622
Take into account ISO C 99 TC1.
Bruno Haible <bruno@clisp.org>
parents:
6825
diff
changeset
|
336 verify_same_types (INT32_C (17), (int_least32_t)0 + 0); |
6825 | 337 verify (UINT32_C (17) == 17); |
6861
b82bca6af622
Take into account ISO C 99 TC1.
Bruno Haible <bruno@clisp.org>
parents:
6825
diff
changeset
|
338 verify_same_types (UINT32_C (17), (uint_least32_t)0 + 0); |
6825 | 339 |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
340 #ifdef INT64_C |
6825 | 341 verify (INT64_C (17) == 17); |
6861
b82bca6af622
Take into account ISO C 99 TC1.
Bruno Haible <bruno@clisp.org>
parents:
6825
diff
changeset
|
342 verify_same_types (INT64_C (17), (int_least64_t)0 + 0); |
6825 | 343 #endif |
6906
b912515df187
Simplification rewrite for stdint module.
Paul Eggert <eggert@cs.ucla.edu>
parents:
6861
diff
changeset
|
344 #ifdef UINT64_C |
6825 | 345 verify (UINT64_C (17) == 17); |
6861
b82bca6af622
Take into account ISO C 99 TC1.
Bruno Haible <bruno@clisp.org>
parents:
6825
diff
changeset
|
346 verify_same_types (UINT64_C (17), (uint_least64_t)0 + 0); |
6825 | 347 #endif |
348 | |
349 verify (INTMAX_C (17) == 17); | |
6861
b82bca6af622
Take into account ISO C 99 TC1.
Bruno Haible <bruno@clisp.org>
parents:
6825
diff
changeset
|
350 verify_same_types (INTMAX_C (17), (intmax_t)0 + 0); |
6825 | 351 verify (UINTMAX_C (17) == 17); |
6861
b82bca6af622
Take into account ISO C 99 TC1.
Bruno Haible <bruno@clisp.org>
parents:
6825
diff
changeset
|
352 verify_same_types (UINTMAX_C (17), (uintmax_t)0 + 0); |
6825 | 353 |
354 | |
355 int | |
12197
e45d9bb2233e
tests: avoid several compiler warnings
Eric Blake <ebb9@byu.net>
parents:
10238
diff
changeset
|
356 main (void) |
6825 | 357 { |
358 return 0; | |
359 } |