annotate gcc/testsuite/jit.dg/test-types.c @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 #include <stdlib.h>
kono
parents:
diff changeset
2 #include <stdio.h>
kono
parents:
diff changeset
3 #include <stddef.h>
kono
parents:
diff changeset
4 #include <stdbool.h>
kono
parents:
diff changeset
5
kono
parents:
diff changeset
6 #include "libgccjit.h"
kono
parents:
diff changeset
7
kono
parents:
diff changeset
8 #include "harness.h"
kono
parents:
diff changeset
9
kono
parents:
diff changeset
10 struct zoo
kono
parents:
diff changeset
11 {
kono
parents:
diff changeset
12 void *m_void_ptr;
kono
parents:
diff changeset
13
kono
parents:
diff changeset
14 bool m_bool;
kono
parents:
diff changeset
15
kono
parents:
diff changeset
16 char m_char;
kono
parents:
diff changeset
17 signed char m_signed_char;
kono
parents:
diff changeset
18 unsigned char m_unsigned_char;
kono
parents:
diff changeset
19
kono
parents:
diff changeset
20 short m_short;
kono
parents:
diff changeset
21 unsigned short m_unsigned_short;
kono
parents:
diff changeset
22
kono
parents:
diff changeset
23 int m_int;
kono
parents:
diff changeset
24 unsigned int m_unsigned_int;
kono
parents:
diff changeset
25
kono
parents:
diff changeset
26 long m_long;
kono
parents:
diff changeset
27 unsigned long m_unsigned_long;
kono
parents:
diff changeset
28
kono
parents:
diff changeset
29 long long m_long_long;
kono
parents:
diff changeset
30 unsigned long long m_unsigned_long_long;
kono
parents:
diff changeset
31
kono
parents:
diff changeset
32 int m_sized_int_type;
kono
parents:
diff changeset
33
kono
parents:
diff changeset
34 float m_float;
kono
parents:
diff changeset
35 double m_double;
kono
parents:
diff changeset
36 long double m_long_double;
kono
parents:
diff changeset
37
kono
parents:
diff changeset
38 const char *m_const_char_ptr;
kono
parents:
diff changeset
39
kono
parents:
diff changeset
40 size_t m_size_t;
kono
parents:
diff changeset
41
kono
parents:
diff changeset
42 FILE *m_FILE_ptr;
kono
parents:
diff changeset
43 };
kono
parents:
diff changeset
44
kono
parents:
diff changeset
45 int test_int = 42;
kono
parents:
diff changeset
46 int *test_ptr = &test_int;
kono
parents:
diff changeset
47
kono
parents:
diff changeset
48 const char *test_string = "test_string";
kono
parents:
diff changeset
49
kono
parents:
diff changeset
50 void
kono
parents:
diff changeset
51 create_code (gcc_jit_context *ctxt, void *user_data)
kono
parents:
diff changeset
52 {
kono
parents:
diff changeset
53 /* Let's try to inject the equivalent of:
kono
parents:
diff changeset
54
kono
parents:
diff changeset
55 void
kono
parents:
diff changeset
56 test_caller (struct zoo *z)
kono
parents:
diff changeset
57 {
kono
parents:
diff changeset
58 for each fields "m_field":
kono
parents:
diff changeset
59 z->m_field = ...some data;
kono
parents:
diff changeset
60 }
kono
parents:
diff changeset
61 */
kono
parents:
diff changeset
62 gcc_jit_type *void_type =
kono
parents:
diff changeset
63 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_VOID);
kono
parents:
diff changeset
64
kono
parents:
diff changeset
65 #define CREATE_FIELD(TYPE, NAME) \
kono
parents:
diff changeset
66 gcc_jit_context_new_field ( \
kono
parents:
diff changeset
67 ctxt, NULL, \
kono
parents:
diff changeset
68 gcc_jit_context_get_type (ctxt, TYPE), \
kono
parents:
diff changeset
69 NAME)
kono
parents:
diff changeset
70
kono
parents:
diff changeset
71 gcc_jit_field *field_m_void_ptr =
kono
parents:
diff changeset
72 CREATE_FIELD (GCC_JIT_TYPE_VOID_PTR, "m_void_ptr");
kono
parents:
diff changeset
73
kono
parents:
diff changeset
74 gcc_jit_field *field_m_bool =
kono
parents:
diff changeset
75 CREATE_FIELD (GCC_JIT_TYPE_BOOL, "m_bool");
kono
parents:
diff changeset
76
kono
parents:
diff changeset
77 gcc_jit_field *field_m_char =
kono
parents:
diff changeset
78 CREATE_FIELD (GCC_JIT_TYPE_CHAR, "m_char");
kono
parents:
diff changeset
79 gcc_jit_field *field_m_signed_char =
kono
parents:
diff changeset
80 CREATE_FIELD (GCC_JIT_TYPE_SIGNED_CHAR, "m_signed_char");
kono
parents:
diff changeset
81 gcc_jit_field *field_m_unsigned_char =
kono
parents:
diff changeset
82 CREATE_FIELD (GCC_JIT_TYPE_UNSIGNED_CHAR, "m_unsigned_char");
kono
parents:
diff changeset
83
kono
parents:
diff changeset
84 gcc_jit_field *field_m_short =
kono
parents:
diff changeset
85 CREATE_FIELD (GCC_JIT_TYPE_SHORT, "m_short");
kono
parents:
diff changeset
86 gcc_jit_field *field_m_unsigned_short =
kono
parents:
diff changeset
87 CREATE_FIELD (GCC_JIT_TYPE_UNSIGNED_SHORT, "m_unsigned_short");
kono
parents:
diff changeset
88
kono
parents:
diff changeset
89 gcc_jit_field *field_m_int =
kono
parents:
diff changeset
90 CREATE_FIELD (GCC_JIT_TYPE_INT, "m_int");
kono
parents:
diff changeset
91 gcc_jit_field *field_m_unsigned_int =
kono
parents:
diff changeset
92 CREATE_FIELD (GCC_JIT_TYPE_UNSIGNED_INT, "m_unsigned_int");
kono
parents:
diff changeset
93
kono
parents:
diff changeset
94 gcc_jit_field *field_m_long =
kono
parents:
diff changeset
95 CREATE_FIELD (GCC_JIT_TYPE_LONG, "m_long");
kono
parents:
diff changeset
96 gcc_jit_field *field_m_unsigned_long =
kono
parents:
diff changeset
97 CREATE_FIELD (GCC_JIT_TYPE_UNSIGNED_LONG, "m_unsigned_long");
kono
parents:
diff changeset
98
kono
parents:
diff changeset
99 gcc_jit_field *field_m_long_long =
kono
parents:
diff changeset
100 CREATE_FIELD (GCC_JIT_TYPE_LONG_LONG, "m_long_long");
kono
parents:
diff changeset
101 gcc_jit_field *field_m_unsigned_long_long =
kono
parents:
diff changeset
102 CREATE_FIELD (GCC_JIT_TYPE_UNSIGNED_LONG_LONG, "m_unsigned_long_long");
kono
parents:
diff changeset
103
kono
parents:
diff changeset
104 /* Signed int type with sizeof (int): */
kono
parents:
diff changeset
105 gcc_jit_type *sized_int_type =
kono
parents:
diff changeset
106 gcc_jit_context_get_int_type (ctxt, sizeof (int), 1);
kono
parents:
diff changeset
107 gcc_jit_field *field_m_sized_int_type =
kono
parents:
diff changeset
108 gcc_jit_context_new_field (
kono
parents:
diff changeset
109 ctxt, NULL, sized_int_type, "m_sized_int_type");
kono
parents:
diff changeset
110
kono
parents:
diff changeset
111 gcc_jit_field *field_m_float =
kono
parents:
diff changeset
112 CREATE_FIELD (GCC_JIT_TYPE_FLOAT, "m_float");
kono
parents:
diff changeset
113 gcc_jit_field *field_m_double =
kono
parents:
diff changeset
114 CREATE_FIELD (GCC_JIT_TYPE_DOUBLE, "m_double");
kono
parents:
diff changeset
115 gcc_jit_field *field_m_long_double =
kono
parents:
diff changeset
116 CREATE_FIELD (GCC_JIT_TYPE_LONG_DOUBLE, "m_long_double");
kono
parents:
diff changeset
117
kono
parents:
diff changeset
118 gcc_jit_field *field_m_const_char_ptr =
kono
parents:
diff changeset
119 CREATE_FIELD (GCC_JIT_TYPE_CONST_CHAR_PTR, "m_const_char_ptr");
kono
parents:
diff changeset
120
kono
parents:
diff changeset
121 gcc_jit_field *field_m_size_t =
kono
parents:
diff changeset
122 CREATE_FIELD (GCC_JIT_TYPE_SIZE_T, "m_size_t");
kono
parents:
diff changeset
123
kono
parents:
diff changeset
124 gcc_jit_field *field_m_FILE_ptr =
kono
parents:
diff changeset
125 CREATE_FIELD (GCC_JIT_TYPE_FILE_PTR, "m_FILE_ptr");
kono
parents:
diff changeset
126
kono
parents:
diff changeset
127 #undef CREATE_FIELD
kono
parents:
diff changeset
128
kono
parents:
diff changeset
129 gcc_jit_field *zoo_fields[] = {
kono
parents:
diff changeset
130 field_m_void_ptr,
kono
parents:
diff changeset
131
kono
parents:
diff changeset
132 field_m_bool,
kono
parents:
diff changeset
133
kono
parents:
diff changeset
134 field_m_char,
kono
parents:
diff changeset
135 field_m_signed_char,
kono
parents:
diff changeset
136 field_m_unsigned_char,
kono
parents:
diff changeset
137
kono
parents:
diff changeset
138 field_m_short,
kono
parents:
diff changeset
139 field_m_unsigned_short,
kono
parents:
diff changeset
140
kono
parents:
diff changeset
141 field_m_int,
kono
parents:
diff changeset
142 field_m_unsigned_int,
kono
parents:
diff changeset
143
kono
parents:
diff changeset
144 field_m_long,
kono
parents:
diff changeset
145 field_m_unsigned_long,
kono
parents:
diff changeset
146
kono
parents:
diff changeset
147 field_m_long_long,
kono
parents:
diff changeset
148 field_m_unsigned_long_long,
kono
parents:
diff changeset
149
kono
parents:
diff changeset
150 field_m_sized_int_type,
kono
parents:
diff changeset
151
kono
parents:
diff changeset
152 field_m_float,
kono
parents:
diff changeset
153 field_m_double,
kono
parents:
diff changeset
154 field_m_long_double,
kono
parents:
diff changeset
155
kono
parents:
diff changeset
156 field_m_const_char_ptr,
kono
parents:
diff changeset
157
kono
parents:
diff changeset
158 field_m_size_t,
kono
parents:
diff changeset
159
kono
parents:
diff changeset
160 field_m_FILE_ptr
kono
parents:
diff changeset
161 };
kono
parents:
diff changeset
162
kono
parents:
diff changeset
163 gcc_jit_type *zoo_type =
kono
parents:
diff changeset
164 gcc_jit_struct_as_type (
kono
parents:
diff changeset
165 gcc_jit_context_new_struct_type (
kono
parents:
diff changeset
166 ctxt,
kono
parents:
diff changeset
167 NULL,
kono
parents:
diff changeset
168 "zoo",
kono
parents:
diff changeset
169 sizeof (zoo_fields) / sizeof (zoo_fields[0]),
kono
parents:
diff changeset
170 zoo_fields));
kono
parents:
diff changeset
171
kono
parents:
diff changeset
172 gcc_jit_type *zoo_ptr_type =
kono
parents:
diff changeset
173 gcc_jit_type_get_pointer (zoo_type);
kono
parents:
diff changeset
174
kono
parents:
diff changeset
175 /* Build the test_fn. */
kono
parents:
diff changeset
176 gcc_jit_param *param_z =
kono
parents:
diff changeset
177 gcc_jit_context_new_param (ctxt, NULL, zoo_ptr_type, "z");
kono
parents:
diff changeset
178 gcc_jit_function *test_fn =
kono
parents:
diff changeset
179 gcc_jit_context_new_function (ctxt, NULL,
kono
parents:
diff changeset
180 GCC_JIT_FUNCTION_EXPORTED,
kono
parents:
diff changeset
181 void_type,
kono
parents:
diff changeset
182 "test_types",
kono
parents:
diff changeset
183 1, &param_z,
kono
parents:
diff changeset
184 0);
kono
parents:
diff changeset
185 gcc_jit_block *block = gcc_jit_function_new_block (test_fn, NULL);
kono
parents:
diff changeset
186
kono
parents:
diff changeset
187 /* Write to the various fields of param "z". */
kono
parents:
diff changeset
188 #define ASSIGN(FIELD, EXPR) \
kono
parents:
diff changeset
189 gcc_jit_block_add_assignment ( \
kono
parents:
diff changeset
190 block, NULL, \
kono
parents:
diff changeset
191 gcc_jit_rvalue_dereference_field ( \
kono
parents:
diff changeset
192 gcc_jit_param_as_rvalue (param_z), \
kono
parents:
diff changeset
193 NULL, \
kono
parents:
diff changeset
194 (FIELD)), \
kono
parents:
diff changeset
195 (EXPR));
kono
parents:
diff changeset
196
kono
parents:
diff changeset
197 ASSIGN(
kono
parents:
diff changeset
198 field_m_void_ptr,
kono
parents:
diff changeset
199 gcc_jit_context_new_rvalue_from_ptr (
kono
parents:
diff changeset
200 ctxt,
kono
parents:
diff changeset
201 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_VOID_PTR),
kono
parents:
diff changeset
202 test_ptr))
kono
parents:
diff changeset
203
kono
parents:
diff changeset
204 ASSIGN(field_m_bool,
kono
parents:
diff changeset
205 gcc_jit_context_new_rvalue_from_int (
kono
parents:
diff changeset
206 ctxt,
kono
parents:
diff changeset
207 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_BOOL), 1))
kono
parents:
diff changeset
208
kono
parents:
diff changeset
209 ASSIGN(field_m_char,
kono
parents:
diff changeset
210 gcc_jit_context_new_rvalue_from_int (
kono
parents:
diff changeset
211 ctxt,
kono
parents:
diff changeset
212 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_CHAR),
kono
parents:
diff changeset
213 'V'))
kono
parents:
diff changeset
214 ASSIGN(field_m_signed_char,
kono
parents:
diff changeset
215 gcc_jit_context_new_rvalue_from_int (
kono
parents:
diff changeset
216 ctxt,
kono
parents:
diff changeset
217 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_SIGNED_CHAR),
kono
parents:
diff changeset
218 -37))
kono
parents:
diff changeset
219 ASSIGN(field_m_unsigned_char,
kono
parents:
diff changeset
220 gcc_jit_context_new_rvalue_from_int (
kono
parents:
diff changeset
221 ctxt,
kono
parents:
diff changeset
222 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_UNSIGNED_CHAR),
kono
parents:
diff changeset
223 200))
kono
parents:
diff changeset
224
kono
parents:
diff changeset
225 ASSIGN(field_m_short,
kono
parents:
diff changeset
226 gcc_jit_context_new_rvalue_from_int (
kono
parents:
diff changeset
227 ctxt,
kono
parents:
diff changeset
228 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_SHORT),
kono
parents:
diff changeset
229 -900))
kono
parents:
diff changeset
230 ASSIGN(field_m_unsigned_short,
kono
parents:
diff changeset
231 gcc_jit_context_new_rvalue_from_int (
kono
parents:
diff changeset
232 ctxt,
kono
parents:
diff changeset
233 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_UNSIGNED_SHORT),
kono
parents:
diff changeset
234 0x3000))
kono
parents:
diff changeset
235
kono
parents:
diff changeset
236 ASSIGN(field_m_int,
kono
parents:
diff changeset
237 gcc_jit_context_new_rvalue_from_int (
kono
parents:
diff changeset
238 ctxt,
kono
parents:
diff changeset
239 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_INT),
kono
parents:
diff changeset
240 -0x2000))
kono
parents:
diff changeset
241 ASSIGN(field_m_unsigned_int,
kono
parents:
diff changeset
242 gcc_jit_context_new_rvalue_from_int (
kono
parents:
diff changeset
243 ctxt,
kono
parents:
diff changeset
244 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_UNSIGNED_INT),
kono
parents:
diff changeset
245 1234567))
kono
parents:
diff changeset
246
kono
parents:
diff changeset
247 ASSIGN(field_m_long,
kono
parents:
diff changeset
248 gcc_jit_context_new_rvalue_from_int (
kono
parents:
diff changeset
249 ctxt,
kono
parents:
diff changeset
250 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_LONG),
kono
parents:
diff changeset
251 -5))
kono
parents:
diff changeset
252 ASSIGN(field_m_unsigned_long,
kono
parents:
diff changeset
253 gcc_jit_context_new_rvalue_from_int (
kono
parents:
diff changeset
254 ctxt,
kono
parents:
diff changeset
255 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_UNSIGNED_LONG),
kono
parents:
diff changeset
256 12345678))
kono
parents:
diff changeset
257
kono
parents:
diff changeset
258 ASSIGN(field_m_long_long,
kono
parents:
diff changeset
259 gcc_jit_context_new_rvalue_from_int (
kono
parents:
diff changeset
260 ctxt,
kono
parents:
diff changeset
261 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_LONG_LONG),
kono
parents:
diff changeset
262 -42))
kono
parents:
diff changeset
263 ASSIGN(field_m_unsigned_long_long,
kono
parents:
diff changeset
264 gcc_jit_context_new_rvalue_from_int (
kono
parents:
diff changeset
265 ctxt,
kono
parents:
diff changeset
266 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_UNSIGNED_LONG_LONG),
kono
parents:
diff changeset
267 123456789))
kono
parents:
diff changeset
268
kono
parents:
diff changeset
269 ASSIGN(field_m_sized_int_type,
kono
parents:
diff changeset
270 gcc_jit_context_new_rvalue_from_int (
kono
parents:
diff changeset
271 ctxt,
kono
parents:
diff changeset
272 sized_int_type, 500))
kono
parents:
diff changeset
273
kono
parents:
diff changeset
274 ASSIGN(field_m_float,
kono
parents:
diff changeset
275 gcc_jit_context_new_rvalue_from_double (
kono
parents:
diff changeset
276 ctxt,
kono
parents:
diff changeset
277 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_FLOAT),
kono
parents:
diff changeset
278 3.141))
kono
parents:
diff changeset
279 ASSIGN(field_m_double,
kono
parents:
diff changeset
280 gcc_jit_context_new_rvalue_from_double (
kono
parents:
diff changeset
281 ctxt,
kono
parents:
diff changeset
282 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_DOUBLE),
kono
parents:
diff changeset
283 3.141))
kono
parents:
diff changeset
284 ASSIGN(field_m_long_double,
kono
parents:
diff changeset
285 gcc_jit_context_new_rvalue_from_double (
kono
parents:
diff changeset
286 ctxt,
kono
parents:
diff changeset
287 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_LONG_DOUBLE),
kono
parents:
diff changeset
288 3.141))
kono
parents:
diff changeset
289
kono
parents:
diff changeset
290 ASSIGN(field_m_const_char_ptr,
kono
parents:
diff changeset
291 gcc_jit_context_new_rvalue_from_ptr (
kono
parents:
diff changeset
292 ctxt,
kono
parents:
diff changeset
293 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_CONST_CHAR_PTR),
kono
parents:
diff changeset
294 (char *)test_string))
kono
parents:
diff changeset
295
kono
parents:
diff changeset
296 ASSIGN(field_m_size_t,
kono
parents:
diff changeset
297 gcc_jit_context_new_rvalue_from_int (
kono
parents:
diff changeset
298 ctxt,
kono
parents:
diff changeset
299 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_SIZE_T),
kono
parents:
diff changeset
300 sizeof (struct zoo)))
kono
parents:
diff changeset
301
kono
parents:
diff changeset
302 ASSIGN(field_m_FILE_ptr,
kono
parents:
diff changeset
303 gcc_jit_context_new_rvalue_from_ptr (
kono
parents:
diff changeset
304 ctxt,
kono
parents:
diff changeset
305 gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_FILE_PTR),
kono
parents:
diff changeset
306 stderr))
kono
parents:
diff changeset
307
kono
parents:
diff changeset
308 #undef ASSIGN
kono
parents:
diff changeset
309
kono
parents:
diff changeset
310 gcc_jit_block_end_with_void_return (block, NULL);
kono
parents:
diff changeset
311 }
kono
parents:
diff changeset
312
kono
parents:
diff changeset
313 void
kono
parents:
diff changeset
314 verify_code (gcc_jit_context *ctxt, gcc_jit_result *result)
kono
parents:
diff changeset
315 {
kono
parents:
diff changeset
316 typedef void (*fn_type) (struct zoo *);
kono
parents:
diff changeset
317 CHECK_NON_NULL (result);
kono
parents:
diff changeset
318
kono
parents:
diff changeset
319 fn_type test_types =
kono
parents:
diff changeset
320 (fn_type)gcc_jit_result_get_code (result, "test_types");
kono
parents:
diff changeset
321 CHECK_NON_NULL (test_types);
kono
parents:
diff changeset
322
kono
parents:
diff changeset
323 struct zoo z;
kono
parents:
diff changeset
324 memset (&z, 0xf0, sizeof (z));
kono
parents:
diff changeset
325
kono
parents:
diff changeset
326 /* Call the JIT-generated function. */
kono
parents:
diff changeset
327 test_types (&z);
kono
parents:
diff changeset
328
kono
parents:
diff changeset
329 /* Verify that it correctly wrote to the various fields. */
kono
parents:
diff changeset
330 CHECK_VALUE (z.m_void_ptr, test_ptr);
kono
parents:
diff changeset
331
kono
parents:
diff changeset
332 CHECK_VALUE (z.m_bool, true);
kono
parents:
diff changeset
333
kono
parents:
diff changeset
334 CHECK_VALUE (z.m_char, 'V');
kono
parents:
diff changeset
335 CHECK_VALUE (z.m_signed_char, -37);
kono
parents:
diff changeset
336 CHECK_VALUE (z.m_unsigned_char, 200);
kono
parents:
diff changeset
337
kono
parents:
diff changeset
338 CHECK_VALUE (z.m_short, -900);
kono
parents:
diff changeset
339 CHECK_VALUE (z.m_unsigned_short, 0x3000);
kono
parents:
diff changeset
340
kono
parents:
diff changeset
341 CHECK_VALUE (z.m_int, -0x2000);
kono
parents:
diff changeset
342 CHECK_VALUE (z.m_unsigned_int, 1234567);
kono
parents:
diff changeset
343
kono
parents:
diff changeset
344 CHECK_VALUE (z.m_long, -5);
kono
parents:
diff changeset
345 CHECK_VALUE (z.m_unsigned_long, 12345678);
kono
parents:
diff changeset
346
kono
parents:
diff changeset
347 CHECK_VALUE (z.m_long_long, -42);
kono
parents:
diff changeset
348 CHECK_VALUE (z.m_unsigned_long_long, 123456789);
kono
parents:
diff changeset
349
kono
parents:
diff changeset
350 CHECK_VALUE (z.m_sized_int_type, 500);
kono
parents:
diff changeset
351
kono
parents:
diff changeset
352 CHECK_VALUE (z.m_float, 3.141f);
kono
parents:
diff changeset
353 CHECK_VALUE (z.m_double, 3.141);
kono
parents:
diff changeset
354 CHECK_VALUE (z.m_long_double, 3.141);
kono
parents:
diff changeset
355
kono
parents:
diff changeset
356 CHECK_VALUE (z.m_const_char_ptr, test_string);
kono
parents:
diff changeset
357
kono
parents:
diff changeset
358 CHECK_VALUE (z.m_size_t, sizeof (struct zoo));
kono
parents:
diff changeset
359
kono
parents:
diff changeset
360 CHECK_VALUE (z.m_FILE_ptr, stderr);
kono
parents:
diff changeset
361 }