File: | build/gcc/godump.c |
Warning: | line 635, column 19 Division by zero |
Press '?' to see keyboard shortcuts
Keyboard shortcuts:
1 | /* Output Go language descriptions of types. | ||||||||
2 | Copyright (C) 2008-2021 Free Software Foundation, Inc. | ||||||||
3 | Written by Ian Lance Taylor <iant@google.com>. | ||||||||
4 | |||||||||
5 | This file is part of GCC. | ||||||||
6 | |||||||||
7 | GCC is free software; you can redistribute it and/or modify it under | ||||||||
8 | the terms of the GNU General Public License as published by the Free | ||||||||
9 | Software Foundation; either version 3, or (at your option) any later | ||||||||
10 | version. | ||||||||
11 | |||||||||
12 | GCC is distributed in the hope that it will be useful, but WITHOUT ANY | ||||||||
13 | WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||||||||
14 | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | ||||||||
15 | for more details. | ||||||||
16 | |||||||||
17 | You should have received a copy of the GNU General Public License | ||||||||
18 | along with GCC; see the file COPYING3. If not see | ||||||||
19 | <http://www.gnu.org/licenses/>. */ | ||||||||
20 | |||||||||
21 | /* This file is used during the build process to emit Go language | ||||||||
22 | descriptions of declarations from C header files. It uses the | ||||||||
23 | debug info hooks to emit the descriptions. The Go language | ||||||||
24 | descriptions then become part of the Go runtime support | ||||||||
25 | library. | ||||||||
26 | |||||||||
27 | All global names are output with a leading underscore, so that they | ||||||||
28 | are all hidden in Go. */ | ||||||||
29 | |||||||||
30 | #include "config.h" | ||||||||
31 | #include "system.h" | ||||||||
32 | #include "coretypes.h" | ||||||||
33 | #include "tree.h" | ||||||||
34 | #include "diagnostic-core.h" | ||||||||
35 | #include "debug.h" | ||||||||
36 | #include "stor-layout.h" | ||||||||
37 | |||||||||
38 | /* We dump this information from the debug hooks. This gives us a | ||||||||
39 | stable and maintainable API to hook into. In order to work | ||||||||
40 | correctly when -g is used, we build our own hooks structure which | ||||||||
41 | wraps the hooks we need to change. */ | ||||||||
42 | |||||||||
43 | /* Our debug hooks. This is initialized by dump_go_spec_init. */ | ||||||||
44 | |||||||||
45 | static struct gcc_debug_hooks go_debug_hooks; | ||||||||
46 | |||||||||
47 | /* The real debug hooks. */ | ||||||||
48 | |||||||||
49 | static const struct gcc_debug_hooks *real_debug_hooks; | ||||||||
50 | |||||||||
51 | /* The file where we should write information. */ | ||||||||
52 | |||||||||
53 | static FILE *go_dump_file; | ||||||||
54 | |||||||||
55 | /* A queue of decls to output. */ | ||||||||
56 | |||||||||
57 | static GTY(()) vec<tree, va_gc> *queue; | ||||||||
58 | |||||||||
59 | /* A hash table of macros we have seen. */ | ||||||||
60 | |||||||||
61 | static htab_t macro_hash; | ||||||||
62 | |||||||||
63 | /* The type of a value in macro_hash. */ | ||||||||
64 | |||||||||
65 | struct macro_hash_value | ||||||||
66 | { | ||||||||
67 | /* The name stored in the hash table. */ | ||||||||
68 | char *name; | ||||||||
69 | /* The value of the macro. */ | ||||||||
70 | char *value; | ||||||||
71 | }; | ||||||||
72 | |||||||||
73 | /* Returns the number of units necessary to represent an integer with the given | ||||||||
74 | PRECISION (in bits). */ | ||||||||
75 | |||||||||
76 | static inline unsigned int | ||||||||
77 | precision_to_units (unsigned int precision) | ||||||||
78 | { | ||||||||
79 | return (precision + BITS_PER_UNIT(8) - 1) / BITS_PER_UNIT(8); | ||||||||
80 | } | ||||||||
81 | |||||||||
82 | /* Calculate the hash value for an entry in the macro hash table. */ | ||||||||
83 | |||||||||
84 | static hashval_t | ||||||||
85 | macro_hash_hashval (const void *val) | ||||||||
86 | { | ||||||||
87 | const struct macro_hash_value *mhval = (const struct macro_hash_value *) val; | ||||||||
88 | return htab_hash_string (mhval->name); | ||||||||
89 | } | ||||||||
90 | |||||||||
91 | /* Compare values in the macro hash table for equality. */ | ||||||||
92 | |||||||||
93 | static int | ||||||||
94 | macro_hash_eq (const void *v1, const void *v2) | ||||||||
95 | { | ||||||||
96 | const struct macro_hash_value *mhv1 = (const struct macro_hash_value *) v1; | ||||||||
97 | const struct macro_hash_value *mhv2 = (const struct macro_hash_value *) v2; | ||||||||
98 | return strcmp (mhv1->name, mhv2->name) == 0; | ||||||||
99 | } | ||||||||
100 | |||||||||
101 | /* Free values deleted from the macro hash table. */ | ||||||||
102 | |||||||||
103 | static void | ||||||||
104 | macro_hash_del (void *v) | ||||||||
105 | { | ||||||||
106 | struct macro_hash_value *mhv = (struct macro_hash_value *) v; | ||||||||
107 | XDELETEVEC (mhv->name)free ((void*) (mhv->name)); | ||||||||
108 | XDELETEVEC (mhv->value)free ((void*) (mhv->value)); | ||||||||
109 | XDELETE (mhv)free ((void*) (mhv)); | ||||||||
110 | } | ||||||||
111 | |||||||||
112 | /* For the string hash tables. */ | ||||||||
113 | |||||||||
114 | static int | ||||||||
115 | string_hash_eq (const void *y1, const void *y2) | ||||||||
116 | { | ||||||||
117 | return strcmp ((const char *) y1, (const char *) y2) == 0; | ||||||||
118 | } | ||||||||
119 | |||||||||
120 | /* A macro definition. */ | ||||||||
121 | |||||||||
122 | static void | ||||||||
123 | go_define (unsigned int lineno, const char *buffer) | ||||||||
124 | { | ||||||||
125 | const char *p; | ||||||||
126 | const char *name_end; | ||||||||
127 | size_t out_len; | ||||||||
128 | char *out_buffer; | ||||||||
129 | char *q; | ||||||||
130 | bool saw_operand; | ||||||||
131 | bool need_operand; | ||||||||
132 | struct macro_hash_value *mhval; | ||||||||
133 | char *copy; | ||||||||
134 | hashval_t hashval; | ||||||||
135 | void **slot; | ||||||||
136 | |||||||||
137 | real_debug_hooks->define (lineno, buffer); | ||||||||
138 | |||||||||
139 | /* Skip macro functions. */ | ||||||||
140 | for (p = buffer; *p != '\0' && *p != ' '; ++p) | ||||||||
141 | if (*p == '(') | ||||||||
142 | return; | ||||||||
143 | |||||||||
144 | if (*p == '\0') | ||||||||
145 | return; | ||||||||
146 | |||||||||
147 | name_end = p; | ||||||||
148 | |||||||||
149 | ++p; | ||||||||
150 | if (*p == '\0') | ||||||||
151 | return; | ||||||||
152 | |||||||||
153 | copy = XNEWVEC (char, name_end - buffer + 1)((char *) xmalloc (sizeof (char) * (name_end - buffer + 1))); | ||||||||
154 | memcpy (copy, buffer, name_end - buffer); | ||||||||
155 | copy[name_end - buffer] = '\0'; | ||||||||
156 | |||||||||
157 | mhval = XNEW (struct macro_hash_value)((struct macro_hash_value *) xmalloc (sizeof (struct macro_hash_value ))); | ||||||||
158 | mhval->name = copy; | ||||||||
159 | mhval->value = NULLnullptr; | ||||||||
160 | |||||||||
161 | hashval = htab_hash_string (copy); | ||||||||
162 | slot = htab_find_slot_with_hash (macro_hash, mhval, hashval, NO_INSERT); | ||||||||
163 | |||||||||
164 | /* For simplicity, we force all names to be hidden by adding an | ||||||||
165 | initial underscore, and let the user undo this as needed. */ | ||||||||
166 | out_len = strlen (p) * 2 + 1; | ||||||||
167 | out_buffer = XNEWVEC (char, out_len)((char *) xmalloc (sizeof (char) * (out_len))); | ||||||||
168 | q = out_buffer; | ||||||||
169 | saw_operand = false; | ||||||||
170 | need_operand = false; | ||||||||
171 | while (*p != '\0') | ||||||||
172 | { | ||||||||
173 | switch (*p) | ||||||||
174 | { | ||||||||
175 | case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': | ||||||||
176 | case 'G': case 'H': case 'I': case 'J': case 'K': case 'L': | ||||||||
177 | case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R': | ||||||||
178 | case 'S': case 'T': case 'U': case 'V': case 'W': case 'X': | ||||||||
179 | case 'Y': case 'Z': | ||||||||
180 | case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': | ||||||||
181 | case 'g': case 'h': case 'i': case 'j': case 'k': case 'l': | ||||||||
182 | case 'm': case 'n': case 'o': case 'p': case 'q': case 'r': | ||||||||
183 | case 's': case 't': case 'u': case 'v': case 'w': case 'x': | ||||||||
184 | case 'y': case 'z': | ||||||||
185 | case '_': | ||||||||
186 | { | ||||||||
187 | /* The start of an identifier. Technically we should also | ||||||||
188 | worry about UTF-8 identifiers, but they are not a | ||||||||
189 | problem for practical uses of -fdump-go-spec so we | ||||||||
190 | don't worry about them. */ | ||||||||
191 | const char *start; | ||||||||
192 | char *n; | ||||||||
193 | struct macro_hash_value idval; | ||||||||
194 | |||||||||
195 | if (saw_operand) | ||||||||
196 | goto unknown; | ||||||||
197 | |||||||||
198 | start = p; | ||||||||
199 | while (ISALNUM (*p)(_sch_istable[(*p) & 0xff] & (unsigned short)(_sch_isalnum )) || *p == '_') | ||||||||
200 | ++p; | ||||||||
201 | n = XALLOCAVEC (char, p - start + 1)((char *) __builtin_alloca(sizeof (char) * (p - start + 1))); | ||||||||
202 | memcpy (n, start, p - start); | ||||||||
203 | n[p - start] = '\0'; | ||||||||
204 | idval.name = n; | ||||||||
205 | idval.value = NULLnullptr; | ||||||||
206 | if (htab_find (macro_hash, &idval) == NULLnullptr) | ||||||||
207 | { | ||||||||
208 | /* This is a reference to a name which was not defined | ||||||||
209 | as a macro. */ | ||||||||
210 | goto unknown; | ||||||||
211 | } | ||||||||
212 | |||||||||
213 | *q++ = '_'; | ||||||||
214 | memcpy (q, start, p - start); | ||||||||
215 | q += p - start; | ||||||||
216 | |||||||||
217 | saw_operand = true; | ||||||||
218 | need_operand = false; | ||||||||
219 | } | ||||||||
220 | break; | ||||||||
221 | |||||||||
222 | case '.': | ||||||||
223 | if (!ISDIGIT (p[1])(_sch_istable[(p[1]) & 0xff] & (unsigned short)(_sch_isdigit ))) | ||||||||
224 | goto unknown; | ||||||||
225 | /* Fall through. */ | ||||||||
226 | case '0': case '1': case '2': case '3': case '4': | ||||||||
227 | case '5': case '6': case '7': case '8': case '9': | ||||||||
228 | { | ||||||||
229 | const char *start; | ||||||||
230 | bool is_hex; | ||||||||
231 | |||||||||
232 | start = p; | ||||||||
233 | is_hex = false; | ||||||||
234 | if (*p == '0' && (p[1] == 'x' || p[1] == 'X')) | ||||||||
235 | { | ||||||||
236 | p += 2; | ||||||||
237 | is_hex = true; | ||||||||
238 | } | ||||||||
239 | while (ISDIGIT (*p)(_sch_istable[(*p) & 0xff] & (unsigned short)(_sch_isdigit )) || *p == '.' || *p == 'e' || *p == 'E' | ||||||||
240 | || (is_hex | ||||||||
241 | && ((*p >= 'a' && *p <= 'f') | ||||||||
242 | || (*p >= 'A' && *p <= 'F')))) | ||||||||
243 | ++p; | ||||||||
244 | memcpy (q, start, p - start); | ||||||||
245 | q += p - start; | ||||||||
246 | while (*p == 'u' || *p == 'U' || *p == 'l' || *p == 'L' | ||||||||
247 | || *p == 'f' || *p == 'F' | ||||||||
248 | || *p == 'd' || *p == 'D') | ||||||||
249 | { | ||||||||
250 | /* Go doesn't use any of these trailing type | ||||||||
251 | modifiers. */ | ||||||||
252 | ++p; | ||||||||
253 | } | ||||||||
254 | |||||||||
255 | /* We'll pick up the exponent, if any, as an | ||||||||
256 | expression. */ | ||||||||
257 | |||||||||
258 | saw_operand = true; | ||||||||
259 | need_operand = false; | ||||||||
260 | } | ||||||||
261 | break; | ||||||||
262 | |||||||||
263 | case ' ': case '\t': | ||||||||
264 | *q++ = *p++; | ||||||||
265 | break; | ||||||||
266 | |||||||||
267 | case '(': | ||||||||
268 | /* Always OK, not part of an operand, presumed to start an | ||||||||
269 | operand. */ | ||||||||
270 | *q++ = *p++; | ||||||||
271 | saw_operand = false; | ||||||||
272 | need_operand = false; | ||||||||
273 | break; | ||||||||
274 | |||||||||
275 | case ')': | ||||||||
276 | /* OK if we don't need an operand, and presumed to indicate | ||||||||
277 | an operand. */ | ||||||||
278 | if (need_operand) | ||||||||
279 | goto unknown; | ||||||||
280 | *q++ = *p++; | ||||||||
281 | saw_operand = true; | ||||||||
282 | break; | ||||||||
283 | |||||||||
284 | case '+': case '-': | ||||||||
285 | /* Always OK, but not part of an operand. */ | ||||||||
286 | *q++ = *p++; | ||||||||
287 | saw_operand = false; | ||||||||
288 | break; | ||||||||
289 | |||||||||
290 | case '*': case '/': case '%': case '|': case '&': case '^': | ||||||||
291 | /* Must be a binary operator. */ | ||||||||
292 | if (!saw_operand) | ||||||||
293 | goto unknown; | ||||||||
294 | *q++ = *p++; | ||||||||
295 | saw_operand = false; | ||||||||
296 | need_operand = true; | ||||||||
297 | break; | ||||||||
298 | |||||||||
299 | case '=': | ||||||||
300 | *q++ = *p++; | ||||||||
301 | if (*p != '=') | ||||||||
302 | goto unknown; | ||||||||
303 | /* Must be a binary operator. */ | ||||||||
304 | if (!saw_operand) | ||||||||
305 | goto unknown; | ||||||||
306 | *q++ = *p++; | ||||||||
307 | saw_operand = false; | ||||||||
308 | need_operand = true; | ||||||||
309 | break; | ||||||||
310 | |||||||||
311 | case '!': | ||||||||
312 | *q++ = *p++; | ||||||||
313 | if (*p == '=') | ||||||||
314 | { | ||||||||
315 | /* Must be a binary operator. */ | ||||||||
316 | if (!saw_operand) | ||||||||
317 | goto unknown; | ||||||||
318 | *q++ = *p++; | ||||||||
319 | saw_operand = false; | ||||||||
320 | need_operand = true; | ||||||||
321 | } | ||||||||
322 | else | ||||||||
323 | { | ||||||||
324 | /* Must be a unary operator. */ | ||||||||
325 | if (saw_operand) | ||||||||
326 | goto unknown; | ||||||||
327 | need_operand = true; | ||||||||
328 | } | ||||||||
329 | break; | ||||||||
330 | |||||||||
331 | case '<': case '>': | ||||||||
332 | /* Must be a binary operand, may be << or >> or <= or >=. */ | ||||||||
333 | if (!saw_operand) | ||||||||
334 | goto unknown; | ||||||||
335 | *q++ = *p++; | ||||||||
336 | if (*p == *(p - 1) || *p == '=') | ||||||||
337 | *q++ = *p++; | ||||||||
338 | saw_operand = false; | ||||||||
339 | need_operand = true; | ||||||||
340 | break; | ||||||||
341 | |||||||||
342 | case '~': | ||||||||
343 | /* Must be a unary operand, must be translated for Go. */ | ||||||||
344 | if (saw_operand) | ||||||||
345 | goto unknown; | ||||||||
346 | *q++ = '^'; | ||||||||
347 | p++; | ||||||||
348 | need_operand = true; | ||||||||
349 | break; | ||||||||
350 | |||||||||
351 | case '"': | ||||||||
352 | case '\'': | ||||||||
353 | { | ||||||||
354 | char quote; | ||||||||
355 | int count; | ||||||||
356 | |||||||||
357 | if (saw_operand) | ||||||||
358 | goto unknown; | ||||||||
359 | quote = *p; | ||||||||
360 | *q++ = *p++; | ||||||||
361 | count = 0; | ||||||||
362 | while (*p != quote) | ||||||||
363 | { | ||||||||
364 | int c; | ||||||||
365 | |||||||||
366 | if (*p == '\0') | ||||||||
367 | goto unknown; | ||||||||
368 | |||||||||
369 | ++count; | ||||||||
370 | |||||||||
371 | if (*p != '\\') | ||||||||
372 | { | ||||||||
373 | *q++ = *p++; | ||||||||
374 | continue; | ||||||||
375 | } | ||||||||
376 | |||||||||
377 | *q++ = *p++; | ||||||||
378 | switch (*p) | ||||||||
379 | { | ||||||||
380 | case '0': case '1': case '2': case '3': | ||||||||
381 | case '4': case '5': case '6': case '7': | ||||||||
382 | c = 0; | ||||||||
383 | while (*p >= '0' && *p <= '7') | ||||||||
384 | { | ||||||||
385 | *q++ = *p++; | ||||||||
386 | ++c; | ||||||||
387 | } | ||||||||
388 | /* Go octal characters are always 3 | ||||||||
389 | digits. */ | ||||||||
390 | if (c != 3) | ||||||||
391 | goto unknown; | ||||||||
392 | break; | ||||||||
393 | |||||||||
394 | case 'x': | ||||||||
395 | *q++ = *p++; | ||||||||
396 | c = 0; | ||||||||
397 | while (ISXDIGIT (*p)(_sch_istable[(*p) & 0xff] & (unsigned short)(_sch_isxdigit ))) | ||||||||
398 | { | ||||||||
399 | *q++ = *p++; | ||||||||
400 | ++c; | ||||||||
401 | } | ||||||||
402 | /* Go hex characters are always 2 digits. */ | ||||||||
403 | if (c != 2) | ||||||||
404 | goto unknown; | ||||||||
405 | break; | ||||||||
406 | |||||||||
407 | case 'a': case 'b': case 'f': case 'n': case 'r': | ||||||||
408 | case 't': case 'v': case '\\': case '\'': case '"': | ||||||||
409 | *q++ = *p++; | ||||||||
410 | break; | ||||||||
411 | |||||||||
412 | default: | ||||||||
413 | goto unknown; | ||||||||
414 | } | ||||||||
415 | } | ||||||||
416 | |||||||||
417 | *q++ = *p++; | ||||||||
418 | |||||||||
419 | if (quote == '\'' && count != 1) | ||||||||
420 | goto unknown; | ||||||||
421 | |||||||||
422 | saw_operand = true; | ||||||||
423 | need_operand = false; | ||||||||
424 | |||||||||
425 | break; | ||||||||
426 | } | ||||||||
427 | |||||||||
428 | default: | ||||||||
429 | goto unknown; | ||||||||
430 | } | ||||||||
431 | } | ||||||||
432 | |||||||||
433 | if (need_operand) | ||||||||
434 | goto unknown; | ||||||||
435 | |||||||||
436 | gcc_assert ((size_t) (q - out_buffer) < out_len)((void)(!((size_t) (q - out_buffer) < out_len) ? fancy_abort ("/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 436, __FUNCTION__), 0 : 0)); | ||||||||
437 | *q = '\0'; | ||||||||
438 | |||||||||
439 | mhval->value = out_buffer; | ||||||||
440 | |||||||||
441 | if (slot == NULLnullptr) | ||||||||
442 | { | ||||||||
443 | slot = htab_find_slot_with_hash (macro_hash, mhval, hashval, INSERT); | ||||||||
444 | gcc_assert (slot != NULL && *slot == NULL)((void)(!(slot != nullptr && *slot == nullptr) ? fancy_abort ("/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 444, __FUNCTION__), 0 : 0)); | ||||||||
445 | } | ||||||||
446 | else | ||||||||
447 | { | ||||||||
448 | if (*slot != NULLnullptr) | ||||||||
449 | macro_hash_del (*slot); | ||||||||
450 | } | ||||||||
451 | |||||||||
452 | *slot = mhval; | ||||||||
453 | |||||||||
454 | return; | ||||||||
455 | |||||||||
456 | unknown: | ||||||||
457 | fprintf (go_dump_file, "// unknowndefine %s\n", buffer); | ||||||||
458 | if (slot != NULLnullptr) | ||||||||
459 | htab_clear_slot (macro_hash, slot); | ||||||||
460 | XDELETEVEC (out_buffer)free ((void*) (out_buffer)); | ||||||||
461 | XDELETEVEC (copy)free ((void*) (copy)); | ||||||||
462 | } | ||||||||
463 | |||||||||
464 | /* A macro undef. */ | ||||||||
465 | |||||||||
466 | static void | ||||||||
467 | go_undef (unsigned int lineno, const char *buffer) | ||||||||
468 | { | ||||||||
469 | struct macro_hash_value mhval; | ||||||||
470 | void **slot; | ||||||||
471 | |||||||||
472 | real_debug_hooks->undef (lineno, buffer); | ||||||||
473 | |||||||||
474 | mhval.name = CONST_CAST (char *, buffer)(const_cast<char *> ((buffer))); | ||||||||
475 | mhval.value = NULLnullptr; | ||||||||
476 | slot = htab_find_slot (macro_hash, &mhval, NO_INSERT); | ||||||||
477 | if (slot != NULLnullptr) | ||||||||
478 | htab_clear_slot (macro_hash, slot); | ||||||||
479 | } | ||||||||
480 | |||||||||
481 | /* A function or variable decl. */ | ||||||||
482 | |||||||||
483 | static void | ||||||||
484 | go_decl (tree decl) | ||||||||
485 | { | ||||||||
486 | if (!TREE_PUBLIC (decl)((decl)->base.public_flag) | ||||||||
487 | || DECL_IS_UNDECLARED_BUILTIN (decl)(((contains_struct_check ((decl), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 487, __FUNCTION__))->decl_minimal.locus) <= ((location_t ) 1)) | ||||||||
488 | || DECL_NAME (decl)((contains_struct_check ((decl), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 488, __FUNCTION__))->decl_minimal.name) == NULL_TREE(tree) nullptr) | ||||||||
489 | return; | ||||||||
490 | vec_safe_push (queue, decl); | ||||||||
491 | } | ||||||||
492 | |||||||||
493 | /* A function decl. */ | ||||||||
494 | |||||||||
495 | static void | ||||||||
496 | go_function_decl (tree decl) | ||||||||
497 | { | ||||||||
498 | real_debug_hooks->function_decl (decl); | ||||||||
499 | go_decl (decl); | ||||||||
500 | } | ||||||||
501 | |||||||||
502 | static void | ||||||||
503 | go_early_global_decl (tree decl) | ||||||||
504 | { | ||||||||
505 | go_decl (decl); | ||||||||
506 | if (TREE_CODE (decl)((enum tree_code) (decl)->base.code) != FUNCTION_DECL || DECL_STRUCT_FUNCTION (decl)((tree_check ((decl), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 506, __FUNCTION__, (FUNCTION_DECL)))->function_decl.f) != NULLnullptr) | ||||||||
507 | real_debug_hooks->early_global_decl (decl); | ||||||||
508 | } | ||||||||
509 | |||||||||
510 | /* A global variable decl. */ | ||||||||
511 | |||||||||
512 | static void | ||||||||
513 | go_late_global_decl (tree decl) | ||||||||
514 | { | ||||||||
515 | real_debug_hooks->late_global_decl (decl); | ||||||||
516 | } | ||||||||
517 | |||||||||
518 | /* A type declaration. */ | ||||||||
519 | |||||||||
520 | static void | ||||||||
521 | go_type_decl (tree decl, int local) | ||||||||
522 | { | ||||||||
523 | real_debug_hooks->type_decl (decl, local); | ||||||||
524 | |||||||||
525 | if (local || DECL_IS_UNDECLARED_BUILTIN (decl)(((contains_struct_check ((decl), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 525, __FUNCTION__))->decl_minimal.locus) <= ((location_t ) 1))) | ||||||||
526 | return; | ||||||||
527 | if (DECL_NAME (decl)((contains_struct_check ((decl), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 527, __FUNCTION__))->decl_minimal.name) == NULL_TREE(tree) nullptr | ||||||||
528 | && (TYPE_NAME (TREE_TYPE (decl))((tree_class_check ((((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 528, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 528, __FUNCTION__))->type_common.name) == NULL_TREE(tree) nullptr | ||||||||
529 | || TREE_CODE (TYPE_NAME (TREE_TYPE (decl)))((enum tree_code) (((tree_class_check ((((contains_struct_check ((decl), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 529, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 529, __FUNCTION__))->type_common.name))->base.code) != IDENTIFIER_NODE) | ||||||||
530 | && TREE_CODE (TREE_TYPE (decl))((enum tree_code) (((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 530, __FUNCTION__))->typed.type))->base.code) != ENUMERAL_TYPE) | ||||||||
531 | return; | ||||||||
532 | vec_safe_push (queue, decl); | ||||||||
533 | } | ||||||||
534 | |||||||||
535 | /* A container for the data we pass around when generating information | ||||||||
536 | at the end of the compilation. */ | ||||||||
537 | |||||||||
538 | class godump_container | ||||||||
539 | { | ||||||||
540 | public: | ||||||||
541 | /* DECLs that we have already seen. */ | ||||||||
542 | hash_set<tree> decls_seen; | ||||||||
543 | |||||||||
544 | /* Types which may potentially have to be defined as dummy | ||||||||
545 | types. */ | ||||||||
546 | hash_set<const char *> pot_dummy_types; | ||||||||
547 | |||||||||
548 | /* Go keywords. */ | ||||||||
549 | htab_t keyword_hash; | ||||||||
550 | |||||||||
551 | /* Global type definitions. */ | ||||||||
552 | htab_t type_hash; | ||||||||
553 | |||||||||
554 | /* Invalid types. */ | ||||||||
555 | htab_t invalid_hash; | ||||||||
556 | |||||||||
557 | /* Obstack used to write out a type definition. */ | ||||||||
558 | struct obstack type_obstack; | ||||||||
559 | }; | ||||||||
560 | |||||||||
561 | /* Append an IDENTIFIER_NODE to OB. */ | ||||||||
562 | |||||||||
563 | static void | ||||||||
564 | go_append_string (struct obstack *ob, tree id) | ||||||||
565 | { | ||||||||
566 | obstack_grow (ob, IDENTIFIER_POINTER (id), IDENTIFIER_LENGTH (id))__extension__ ({ struct obstack *__o = (ob); size_t __len = ( ((tree_check ((id), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 566, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.len )); if (__extension__ ({ struct obstack const *__o1 = (__o); ( size_t) (__o1->chunk_limit - __o1->next_free); }) < __len ) _obstack_newchunk (__o, __len); memcpy (__o->next_free, ( (const char *) (tree_check ((id), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 566, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str ), __len); __o->next_free += __len; (void) 0; }); | ||||||||
567 | } | ||||||||
568 | |||||||||
569 | /* Given an integer PRECISION in bits, returns a constant string that is the | ||||||||
570 | matching go int or uint type (depending on the IS_UNSIGNED flag). Returns a | ||||||||
571 | NULL pointer if there is no matching go type. */ | ||||||||
572 | |||||||||
573 | static const char * | ||||||||
574 | go_get_uinttype_for_precision (unsigned int precision, bool is_unsigned) | ||||||||
575 | { | ||||||||
576 | switch (precision) | ||||||||
577 | { | ||||||||
578 | case 8: | ||||||||
579 | return is_unsigned ? "uint8" : "int8"; | ||||||||
580 | case 16: | ||||||||
581 | return is_unsigned ? "uint16" : "int16"; | ||||||||
582 | case 32: | ||||||||
583 | return is_unsigned ? "uint32" : "int32"; | ||||||||
584 | case 64: | ||||||||
585 | return is_unsigned ? "uint64" : "int64"; | ||||||||
586 | default: | ||||||||
587 | return NULLnullptr; | ||||||||
588 | } | ||||||||
589 | } | ||||||||
590 | |||||||||
591 | /* Append an artificial variable name with the suffix _INDEX to OB. Returns | ||||||||
592 | INDEX + 1. */ | ||||||||
593 | |||||||||
594 | static unsigned int | ||||||||
595 | go_append_artificial_name (struct obstack *ob, unsigned int index) | ||||||||
596 | { | ||||||||
597 | char buf[100]; | ||||||||
598 | |||||||||
599 | /* FIXME: identifier may not be unique. */ | ||||||||
600 | obstack_grow (ob, "Godump_", 7)__extension__ ({ struct obstack *__o = (ob); size_t __len = ( 7); if (__extension__ ({ struct obstack const *__o1 = (__o); ( size_t) (__o1->chunk_limit - __o1->next_free); }) < __len ) _obstack_newchunk (__o, __len); memcpy (__o->next_free, "Godump_" , __len); __o->next_free += __len; (void) 0; }); | ||||||||
601 | snprintf (buf, sizeof buf, "%u", index); | ||||||||
602 | obstack_grow (ob, buf, strlen (buf))__extension__ ({ struct obstack *__o = (ob); size_t __len = ( strlen (buf)); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free ); }) < __len) _obstack_newchunk (__o, __len); memcpy (__o ->next_free, buf, __len); __o->next_free += __len; (void ) 0; }); | ||||||||
603 | |||||||||
604 | return index + 1; | ||||||||
605 | } | ||||||||
606 | |||||||||
607 | /* Append the variable name from DECL to OB. If the name is in the | ||||||||
608 | KEYWORD_HASH, prepend an '_'. */ | ||||||||
609 | |||||||||
610 | static void | ||||||||
611 | go_append_decl_name (struct obstack *ob, tree decl, htab_t keyword_hash) | ||||||||
612 | { | ||||||||
613 | const char *var_name; | ||||||||
614 | void **slot; | ||||||||
615 | |||||||||
616 | /* Start variable name with an underscore if a keyword. */ | ||||||||
617 | var_name = IDENTIFIER_POINTER (DECL_NAME (decl))((const char *) (tree_check ((((contains_struct_check ((decl) , (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 617, __FUNCTION__))->decl_minimal.name)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 617, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str ); | ||||||||
618 | slot = htab_find_slot (keyword_hash, var_name, NO_INSERT); | ||||||||
619 | if (slot != NULLnullptr) | ||||||||
620 | obstack_1grow (ob, '_')__extension__ ({ struct obstack *__o = (ob); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < 1) _obstack_newchunk (__o, 1) ; ((void) (*((__o)->next_free)++ = ('_'))); }); | ||||||||
621 | go_append_string (ob, DECL_NAME (decl)((contains_struct_check ((decl), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 621, __FUNCTION__))->decl_minimal.name)); | ||||||||
622 | } | ||||||||
623 | |||||||||
624 | /* Appends a byte array with the necessary number of elements and the name | ||||||||
625 | "Godump_INDEX_pad" to pad from FROM_OFFSET to TO_OFFSET to OB assuming that | ||||||||
626 | the next field is automatically aligned to ALIGN_UNITS. Returns INDEX + 1, | ||||||||
627 | or INDEX if no padding had to be appended. The resulting offset where the | ||||||||
628 | next field is allocated is returned through RET_OFFSET. */ | ||||||||
629 | |||||||||
630 | static unsigned int | ||||||||
631 | go_append_padding (struct obstack *ob, unsigned int from_offset, | ||||||||
632 | unsigned int to_offset, unsigned int align_units, | ||||||||
633 | unsigned int index, unsigned int *ret_offset) | ||||||||
634 | { | ||||||||
635 | if (from_offset % align_units > 0) | ||||||||
| |||||||||
636 | from_offset += align_units - (from_offset % align_units); | ||||||||
637 | gcc_assert (to_offset >= from_offset)((void)(!(to_offset >= from_offset) ? fancy_abort ("/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 637, __FUNCTION__), 0 : 0)); | ||||||||
638 | if (to_offset > from_offset) | ||||||||
639 | { | ||||||||
640 | char buf[100]; | ||||||||
641 | |||||||||
642 | index = go_append_artificial_name (ob, index); | ||||||||
643 | snprintf (buf, sizeof buf, "_pad [%u]byte; ", to_offset - from_offset); | ||||||||
644 | obstack_grow (ob, buf, strlen (buf))__extension__ ({ struct obstack *__o = (ob); size_t __len = ( strlen (buf)); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free ); }) < __len) _obstack_newchunk (__o, __len); memcpy (__o ->next_free, buf, __len); __o->next_free += __len; (void ) 0; }); | ||||||||
645 | } | ||||||||
646 | *ret_offset = to_offset; | ||||||||
647 | |||||||||
648 | return index; | ||||||||
649 | } | ||||||||
650 | |||||||||
651 | /* Appends an array of type TYPE_STRING with zero elements and the name | ||||||||
652 | "Godump_INDEX_align" to OB. If TYPE_STRING is a null pointer, ERROR_STRING | ||||||||
653 | is appended instead of the type. Returns INDEX + 1. */ | ||||||||
654 | |||||||||
655 | static unsigned int | ||||||||
656 | go_force_record_alignment (struct obstack *ob, const char *type_string, | ||||||||
657 | unsigned int index, const char *error_string) | ||||||||
658 | { | ||||||||
659 | index = go_append_artificial_name (ob, index); | ||||||||
660 | obstack_grow (ob, "_align ", 7)__extension__ ({ struct obstack *__o = (ob); size_t __len = ( 7); if (__extension__ ({ struct obstack const *__o1 = (__o); ( size_t) (__o1->chunk_limit - __o1->next_free); }) < __len ) _obstack_newchunk (__o, __len); memcpy (__o->next_free, "_align " , __len); __o->next_free += __len; (void) 0; }); | ||||||||
661 | if (type_string == NULLnullptr) | ||||||||
662 | obstack_grow (ob, error_string, strlen (error_string))__extension__ ({ struct obstack *__o = (ob); size_t __len = ( strlen (error_string)); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free ); }) < __len) _obstack_newchunk (__o, __len); memcpy (__o ->next_free, error_string, __len); __o->next_free += __len ; (void) 0; }); | ||||||||
663 | else | ||||||||
664 | { | ||||||||
665 | obstack_grow (ob, "[0]", 3)__extension__ ({ struct obstack *__o = (ob); size_t __len = ( 3); if (__extension__ ({ struct obstack const *__o1 = (__o); ( size_t) (__o1->chunk_limit - __o1->next_free); }) < __len ) _obstack_newchunk (__o, __len); memcpy (__o->next_free, "[0]" , __len); __o->next_free += __len; (void) 0; }); | ||||||||
666 | obstack_grow (ob, type_string, strlen (type_string))__extension__ ({ struct obstack *__o = (ob); size_t __len = ( strlen (type_string)); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free ); }) < __len) _obstack_newchunk (__o, __len); memcpy (__o ->next_free, type_string, __len); __o->next_free += __len ; (void) 0; }); | ||||||||
667 | } | ||||||||
668 | obstack_grow (ob, "; ", 2)__extension__ ({ struct obstack *__o = (ob); size_t __len = ( 2); if (__extension__ ({ struct obstack const *__o1 = (__o); ( size_t) (__o1->chunk_limit - __o1->next_free); }) < __len ) _obstack_newchunk (__o, __len); memcpy (__o->next_free, "; " , __len); __o->next_free += __len; (void) 0; }); | ||||||||
669 | |||||||||
670 | return index; | ||||||||
671 | } | ||||||||
672 | |||||||||
673 | /* Write the Go version of TYPE to CONTAINER->TYPE_OBSTACK. | ||||||||
674 | USE_TYPE_NAME is true if we can simply use a type name here without | ||||||||
675 | needing to define it. IS_FUNC_OK is true if we can output a func | ||||||||
676 | type here; the "func" keyword will already have been added. | ||||||||
677 | Return true if the type can be represented in Go, false otherwise. | ||||||||
678 | P_ART_I is used for indexing artificial elements in nested structures and | ||||||||
679 | should always be a NULL pointer when called, except by certain recursive | ||||||||
680 | calls from go_format_type() itself. */ | ||||||||
681 | |||||||||
682 | static bool | ||||||||
683 | go_format_type (class godump_container *container, tree type, | ||||||||
684 | bool use_type_name, bool is_func_ok, unsigned int *p_art_i, | ||||||||
685 | bool is_anon_record_or_union) | ||||||||
686 | { | ||||||||
687 | bool ret; | ||||||||
688 | struct obstack *ob; | ||||||||
689 | unsigned int art_i_dummy; | ||||||||
690 | bool is_union = false; | ||||||||
691 | |||||||||
692 | if (p_art_i == NULLnullptr) | ||||||||
| |||||||||
693 | { | ||||||||
694 | art_i_dummy = 0; | ||||||||
695 | p_art_i = &art_i_dummy; | ||||||||
696 | } | ||||||||
697 | ret = true; | ||||||||
698 | ob = &container->type_obstack; | ||||||||
699 | |||||||||
700 | if (use_type_name | ||||||||
701 | && TYPE_NAME (type)((tree_class_check ((type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 701, __FUNCTION__))->type_common.name) != NULL_TREE(tree) nullptr | ||||||||
702 | && (AGGREGATE_TYPE_P (type)(((enum tree_code) (type)->base.code) == ARRAY_TYPE || ((( enum tree_code) (type)->base.code) == RECORD_TYPE || ((enum tree_code) (type)->base.code) == UNION_TYPE || ((enum tree_code ) (type)->base.code) == QUAL_UNION_TYPE)) | ||||||||
703 | || POINTER_TYPE_P (type)(((enum tree_code) (type)->base.code) == POINTER_TYPE || ( (enum tree_code) (type)->base.code) == REFERENCE_TYPE) | ||||||||
704 | || TREE_CODE (type)((enum tree_code) (type)->base.code) == FUNCTION_TYPE)) | ||||||||
705 | { | ||||||||
706 | tree name; | ||||||||
707 | void **slot; | ||||||||
708 | |||||||||
709 | /* References to complex builtin types cannot be translated to | ||||||||
710 | Go. */ | ||||||||
711 | if (DECL_P (TYPE_NAME (type))(tree_code_type[(int) (((enum tree_code) (((tree_class_check ( (type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 711, __FUNCTION__))->type_common.name))->base.code))] == tcc_declaration) | ||||||||
712 | && DECL_IS_UNDECLARED_BUILTIN (TYPE_NAME (type))(((contains_struct_check ((((tree_class_check ((type), (tcc_type ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 712, __FUNCTION__))->type_common.name)), (TS_DECL_MINIMAL ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 712, __FUNCTION__))->decl_minimal.locus) <= ((location_t ) 1))) | ||||||||
713 | ret = false; | ||||||||
714 | |||||||||
715 | name = TYPE_IDENTIFIER (type)(((tree_class_check ((type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 715, __FUNCTION__))->type_common.name) && (tree_code_type [(int) (((enum tree_code) (((tree_class_check ((type), (tcc_type ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 715, __FUNCTION__))->type_common.name))->base.code))] == tcc_declaration) ? ((contains_struct_check ((((tree_class_check ((type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 715, __FUNCTION__))->type_common.name)), (TS_DECL_MINIMAL ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 715, __FUNCTION__))->decl_minimal.name) : ((tree_class_check ((type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 715, __FUNCTION__))->type_common.name)); | ||||||||
716 | |||||||||
717 | slot = htab_find_slot (container->invalid_hash, IDENTIFIER_POINTER (name)((const char *) (tree_check ((name), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 717, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str ), | ||||||||
718 | NO_INSERT); | ||||||||
719 | if (slot != NULLnullptr) | ||||||||
720 | ret = false; | ||||||||
721 | |||||||||
722 | /* References to incomplete structs are permitted in many | ||||||||
723 | contexts, like behind a pointer or inside of a typedef. So | ||||||||
724 | consider any referenced struct a potential dummy type. */ | ||||||||
725 | if (RECORD_OR_UNION_TYPE_P (type)(((enum tree_code) (type)->base.code) == RECORD_TYPE || (( enum tree_code) (type)->base.code) == UNION_TYPE || ((enum tree_code) (type)->base.code) == QUAL_UNION_TYPE)) | ||||||||
726 | container->pot_dummy_types.add (IDENTIFIER_POINTER (name)((const char *) (tree_check ((name), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 726, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str )); | ||||||||
727 | |||||||||
728 | obstack_1grow (ob, '_')__extension__ ({ struct obstack *__o = (ob); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < 1) _obstack_newchunk (__o, 1) ; ((void) (*((__o)->next_free)++ = ('_'))); }); | ||||||||
729 | go_append_string (ob, name); | ||||||||
730 | return ret; | ||||||||
731 | } | ||||||||
732 | |||||||||
733 | switch (TREE_CODE (type)((enum tree_code) (type)->base.code)) | ||||||||
734 | { | ||||||||
735 | case TYPE_DECL: | ||||||||
736 | { | ||||||||
737 | void **slot; | ||||||||
738 | |||||||||
739 | slot = htab_find_slot (container->invalid_hash, | ||||||||
740 | IDENTIFIER_POINTER (DECL_NAME (type))((const char *) (tree_check ((((contains_struct_check ((type) , (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 740, __FUNCTION__))->decl_minimal.name)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 740, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str ), | ||||||||
741 | NO_INSERT); | ||||||||
742 | if (slot != NULLnullptr) | ||||||||
743 | ret = false; | ||||||||
744 | |||||||||
745 | obstack_1grow (ob, '_')__extension__ ({ struct obstack *__o = (ob); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < 1) _obstack_newchunk (__o, 1) ; ((void) (*((__o)->next_free)++ = ('_'))); }); | ||||||||
746 | go_append_string (ob, DECL_NAME (type)((contains_struct_check ((type), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 746, __FUNCTION__))->decl_minimal.name)); | ||||||||
747 | } | ||||||||
748 | break; | ||||||||
749 | |||||||||
750 | case ENUMERAL_TYPE: | ||||||||
751 | case INTEGER_TYPE: | ||||||||
752 | { | ||||||||
753 | const char *s; | ||||||||
754 | char buf[100]; | ||||||||
755 | |||||||||
756 | s = go_get_uinttype_for_precision (TYPE_PRECISION (type)((tree_class_check ((type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 756, __FUNCTION__))->type_common.precision), | ||||||||
757 | TYPE_UNSIGNED (type)((tree_class_check ((type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 757, __FUNCTION__))->base.u.bits.unsigned_flag)); | ||||||||
758 | if (s == NULLnullptr) | ||||||||
759 | { | ||||||||
760 | snprintf (buf, sizeof buf, "INVALID-int-%u%s", | ||||||||
761 | TYPE_PRECISION (type)((tree_class_check ((type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 761, __FUNCTION__))->type_common.precision), | ||||||||
762 | TYPE_UNSIGNED (type)((tree_class_check ((type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 762, __FUNCTION__))->base.u.bits.unsigned_flag) ? "u" : ""); | ||||||||
763 | s = buf; | ||||||||
764 | ret = false; | ||||||||
765 | } | ||||||||
766 | obstack_grow (ob, s, strlen (s))__extension__ ({ struct obstack *__o = (ob); size_t __len = ( strlen (s)); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < __len) _obstack_newchunk (__o, __len); memcpy (__o-> next_free, s, __len); __o->next_free += __len; (void) 0; } ); | ||||||||
767 | } | ||||||||
768 | break; | ||||||||
769 | |||||||||
770 | case REAL_TYPE: | ||||||||
771 | { | ||||||||
772 | const char *s; | ||||||||
773 | char buf[100]; | ||||||||
774 | |||||||||
775 | switch (TYPE_PRECISION (type)((tree_class_check ((type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 775, __FUNCTION__))->type_common.precision)) | ||||||||
776 | { | ||||||||
777 | case 32: | ||||||||
778 | s = "float32"; | ||||||||
779 | break; | ||||||||
780 | case 64: | ||||||||
781 | s = "float64"; | ||||||||
782 | break; | ||||||||
783 | default: | ||||||||
784 | snprintf (buf, sizeof buf, "INVALID-float-%u", | ||||||||
785 | TYPE_PRECISION (type)((tree_class_check ((type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 785, __FUNCTION__))->type_common.precision)); | ||||||||
786 | s = buf; | ||||||||
787 | ret = false; | ||||||||
788 | break; | ||||||||
789 | } | ||||||||
790 | obstack_grow (ob, s, strlen (s))__extension__ ({ struct obstack *__o = (ob); size_t __len = ( strlen (s)); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < __len) _obstack_newchunk (__o, __len); memcpy (__o-> next_free, s, __len); __o->next_free += __len; (void) 0; } ); | ||||||||
791 | } | ||||||||
792 | break; | ||||||||
793 | |||||||||
794 | case COMPLEX_TYPE: | ||||||||
795 | { | ||||||||
796 | const char *s; | ||||||||
797 | char buf[100]; | ||||||||
798 | tree real_type; | ||||||||
799 | |||||||||
800 | real_type = TREE_TYPE (type)((contains_struct_check ((type), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 800, __FUNCTION__))->typed.type); | ||||||||
801 | if (TREE_CODE (real_type)((enum tree_code) (real_type)->base.code) == REAL_TYPE) | ||||||||
802 | { | ||||||||
803 | switch (TYPE_PRECISION (real_type)((tree_class_check ((real_type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 803, __FUNCTION__))->type_common.precision)) | ||||||||
804 | { | ||||||||
805 | case 32: | ||||||||
806 | s = "complex64"; | ||||||||
807 | break; | ||||||||
808 | case 64: | ||||||||
809 | s = "complex128"; | ||||||||
810 | break; | ||||||||
811 | default: | ||||||||
812 | snprintf (buf, sizeof buf, "INVALID-complex-%u", | ||||||||
813 | 2 * TYPE_PRECISION (real_type)((tree_class_check ((real_type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 813, __FUNCTION__))->type_common.precision)); | ||||||||
814 | s = buf; | ||||||||
815 | ret = false; | ||||||||
816 | break; | ||||||||
817 | } | ||||||||
818 | } | ||||||||
819 | else | ||||||||
820 | { | ||||||||
821 | s = "INVALID-complex-non-real"; | ||||||||
822 | ret = false; | ||||||||
823 | } | ||||||||
824 | obstack_grow (ob, s, strlen (s))__extension__ ({ struct obstack *__o = (ob); size_t __len = ( strlen (s)); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < __len) _obstack_newchunk (__o, __len); memcpy (__o-> next_free, s, __len); __o->next_free += __len; (void) 0; } ); | ||||||||
825 | } | ||||||||
826 | break; | ||||||||
827 | |||||||||
828 | case BOOLEAN_TYPE: | ||||||||
829 | obstack_grow (ob, "bool", 4)__extension__ ({ struct obstack *__o = (ob); size_t __len = ( 4); if (__extension__ ({ struct obstack const *__o1 = (__o); ( size_t) (__o1->chunk_limit - __o1->next_free); }) < __len ) _obstack_newchunk (__o, __len); memcpy (__o->next_free, "bool" , __len); __o->next_free += __len; (void) 0; }); | ||||||||
830 | break; | ||||||||
831 | |||||||||
832 | case POINTER_TYPE: | ||||||||
833 | if (TREE_CODE (TREE_TYPE (type))((enum tree_code) (((contains_struct_check ((type), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 833, __FUNCTION__))->typed.type))->base.code) == FUNCTION_TYPE) | ||||||||
834 | obstack_grow (ob, "func", 4)__extension__ ({ struct obstack *__o = (ob); size_t __len = ( 4); if (__extension__ ({ struct obstack const *__o1 = (__o); ( size_t) (__o1->chunk_limit - __o1->next_free); }) < __len ) _obstack_newchunk (__o, __len); memcpy (__o->next_free, "func" , __len); __o->next_free += __len; (void) 0; }); | ||||||||
835 | else | ||||||||
836 | obstack_1grow (ob, '*')__extension__ ({ struct obstack *__o = (ob); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < 1) _obstack_newchunk (__o, 1) ; ((void) (*((__o)->next_free)++ = ('*'))); }); | ||||||||
837 | if (VOID_TYPE_P (TREE_TYPE (type))(((enum tree_code) (((contains_struct_check ((type), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 837, __FUNCTION__))->typed.type))->base.code) == VOID_TYPE )) | ||||||||
838 | obstack_grow (ob, "byte", 4)__extension__ ({ struct obstack *__o = (ob); size_t __len = ( 4); if (__extension__ ({ struct obstack const *__o1 = (__o); ( size_t) (__o1->chunk_limit - __o1->next_free); }) < __len ) _obstack_newchunk (__o, __len); memcpy (__o->next_free, "byte" , __len); __o->next_free += __len; (void) 0; }); | ||||||||
839 | else | ||||||||
840 | { | ||||||||
841 | if (!go_format_type (container, TREE_TYPE (type)((contains_struct_check ((type), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 841, __FUNCTION__))->typed.type), use_type_name, | ||||||||
842 | true, NULLnullptr, false)) | ||||||||
843 | ret = false; | ||||||||
844 | } | ||||||||
845 | break; | ||||||||
846 | |||||||||
847 | case ARRAY_TYPE: | ||||||||
848 | obstack_1grow (ob, '[')__extension__ ({ struct obstack *__o = (ob); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < 1) _obstack_newchunk (__o, 1) ; ((void) (*((__o)->next_free)++ = ('['))); }); | ||||||||
849 | if (TYPE_DOMAIN (type)((tree_check ((type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 849, __FUNCTION__, (ARRAY_TYPE)))->type_non_common.values ) != NULL_TREE(tree) nullptr | ||||||||
850 | && TREE_CODE (TYPE_DOMAIN (type))((enum tree_code) (((tree_check ((type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 850, __FUNCTION__, (ARRAY_TYPE)))->type_non_common.values ))->base.code) == INTEGER_TYPE | ||||||||
851 | && TYPE_MIN_VALUE (TYPE_DOMAIN (type))((tree_check5 ((((tree_check ((type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 851, __FUNCTION__, (ARRAY_TYPE)))->type_non_common.values )), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 851, __FUNCTION__, (INTEGER_TYPE), (ENUMERAL_TYPE), (BOOLEAN_TYPE ), (REAL_TYPE), (FIXED_POINT_TYPE)))->type_non_common.minval ) != NULL_TREE(tree) nullptr | ||||||||
852 | && TREE_CODE (TYPE_MIN_VALUE (TYPE_DOMAIN (type)))((enum tree_code) (((tree_check5 ((((tree_check ((type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 852, __FUNCTION__, (ARRAY_TYPE)))->type_non_common.values )), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 852, __FUNCTION__, (INTEGER_TYPE), (ENUMERAL_TYPE), (BOOLEAN_TYPE ), (REAL_TYPE), (FIXED_POINT_TYPE)))->type_non_common.minval ))->base.code) == INTEGER_CST | ||||||||
853 | && tree_int_cst_sgn (TYPE_MIN_VALUE (TYPE_DOMAIN (type))((tree_check5 ((((tree_check ((type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 853, __FUNCTION__, (ARRAY_TYPE)))->type_non_common.values )), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 853, __FUNCTION__, (INTEGER_TYPE), (ENUMERAL_TYPE), (BOOLEAN_TYPE ), (REAL_TYPE), (FIXED_POINT_TYPE)))->type_non_common.minval )) == 0 | ||||||||
854 | && TYPE_MAX_VALUE (TYPE_DOMAIN (type))((tree_check5 ((((tree_check ((type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 854, __FUNCTION__, (ARRAY_TYPE)))->type_non_common.values )), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 854, __FUNCTION__, (INTEGER_TYPE), (ENUMERAL_TYPE), (BOOLEAN_TYPE ), (REAL_TYPE), (FIXED_POINT_TYPE)))->type_non_common.maxval ) != NULL_TREE(tree) nullptr | ||||||||
855 | && TREE_CODE (TYPE_MAX_VALUE (TYPE_DOMAIN (type)))((enum tree_code) (((tree_check5 ((((tree_check ((type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 855, __FUNCTION__, (ARRAY_TYPE)))->type_non_common.values )), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 855, __FUNCTION__, (INTEGER_TYPE), (ENUMERAL_TYPE), (BOOLEAN_TYPE ), (REAL_TYPE), (FIXED_POINT_TYPE)))->type_non_common.maxval ))->base.code) == INTEGER_CST | ||||||||
856 | && tree_fits_shwi_p (TYPE_MAX_VALUE (TYPE_DOMAIN (type))((tree_check5 ((((tree_check ((type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 856, __FUNCTION__, (ARRAY_TYPE)))->type_non_common.values )), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 856, __FUNCTION__, (INTEGER_TYPE), (ENUMERAL_TYPE), (BOOLEAN_TYPE ), (REAL_TYPE), (FIXED_POINT_TYPE)))->type_non_common.maxval ))) | ||||||||
857 | { | ||||||||
858 | char buf[100]; | ||||||||
859 | |||||||||
860 | snprintf (buf, sizeof buf, HOST_WIDE_INT_PRINT_DEC"%" "l" "d" "+1", | ||||||||
861 | tree_to_shwi (TYPE_MAX_VALUE (TYPE_DOMAIN (type))((tree_check5 ((((tree_check ((type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 861, __FUNCTION__, (ARRAY_TYPE)))->type_non_common.values )), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 861, __FUNCTION__, (INTEGER_TYPE), (ENUMERAL_TYPE), (BOOLEAN_TYPE ), (REAL_TYPE), (FIXED_POINT_TYPE)))->type_non_common.maxval ))); | ||||||||
862 | obstack_grow (ob, buf, strlen (buf))__extension__ ({ struct obstack *__o = (ob); size_t __len = ( strlen (buf)); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free ); }) < __len) _obstack_newchunk (__o, __len); memcpy (__o ->next_free, buf, __len); __o->next_free += __len; (void ) 0; }); | ||||||||
863 | } | ||||||||
864 | else | ||||||||
865 | obstack_1grow (ob, '0')__extension__ ({ struct obstack *__o = (ob); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < 1) _obstack_newchunk (__o, 1) ; ((void) (*((__o)->next_free)++ = ('0'))); }); | ||||||||
866 | obstack_1grow (ob, ']')__extension__ ({ struct obstack *__o = (ob); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < 1) _obstack_newchunk (__o, 1) ; ((void) (*((__o)->next_free)++ = (']'))); }); | ||||||||
867 | if (!go_format_type (container, TREE_TYPE (type)((contains_struct_check ((type), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 867, __FUNCTION__))->typed.type), use_type_name, false, | ||||||||
868 | NULLnullptr, false)) | ||||||||
869 | ret = false; | ||||||||
870 | break; | ||||||||
871 | |||||||||
872 | case UNION_TYPE: | ||||||||
873 | is_union = true; | ||||||||
874 | /* Fall through to RECORD_TYPE case. */ | ||||||||
875 | gcc_fallthrough (); | ||||||||
876 | case RECORD_TYPE: | ||||||||
877 | { | ||||||||
878 | unsigned int prev_field_end; | ||||||||
879 | unsigned int known_alignment; | ||||||||
880 | tree field; | ||||||||
881 | bool emitted_a_field; | ||||||||
882 | |||||||||
883 | /* FIXME: Why is this necessary? Without it we can get a core | ||||||||
884 | dump on the s390x headers, or from a file containing simply | ||||||||
885 | "typedef struct S T;". */ | ||||||||
886 | layout_type (type); | ||||||||
887 | |||||||||
888 | prev_field_end = 0; | ||||||||
889 | known_alignment = 1; | ||||||||
890 | /* Anonymous records and unions are flattened, i.e. they are not put | ||||||||
891 | into "struct { ... }". */ | ||||||||
892 | if (!is_anon_record_or_union) | ||||||||
893 | obstack_grow (ob, "struct { ", 9)__extension__ ({ struct obstack *__o = (ob); size_t __len = ( 9); if (__extension__ ({ struct obstack const *__o1 = (__o); ( size_t) (__o1->chunk_limit - __o1->next_free); }) < __len ) _obstack_newchunk (__o, __len); memcpy (__o->next_free, "struct { " , __len); __o->next_free += __len; (void) 0; }); | ||||||||
894 | for (field = TYPE_FIELDS (type)((tree_check3 ((type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 894, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE )))->type_non_common.values), emitted_a_field = false; | ||||||||
895 | field != NULL_TREE(tree) nullptr; | ||||||||
896 | field = TREE_CHAIN (field)((contains_struct_check ((field), (TS_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 896, __FUNCTION__))->common.chain)) | ||||||||
897 | { | ||||||||
898 | if (TREE_CODE (field)((enum tree_code) (field)->base.code) != FIELD_DECL) | ||||||||
899 | continue; | ||||||||
900 | if (DECL_BIT_FIELD (field)((tree_check ((field), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 900, __FUNCTION__, (FIELD_DECL)))->decl_common.decl_flag_1 )) | ||||||||
901 | /* Bit fields are replaced by padding. */ | ||||||||
902 | continue; | ||||||||
903 | /* Only the first non-bitfield field is emitted for unions. */ | ||||||||
904 | if (!is_union
| ||||||||
905 | { | ||||||||
906 | /* Emit the field. */ | ||||||||
907 | bool field_ok; | ||||||||
908 | bool is_anon_substructure; | ||||||||
909 | unsigned int decl_align_unit; | ||||||||
910 | unsigned int decl_offset; | ||||||||
911 | |||||||||
912 | field_ok = true; | ||||||||
913 | emitted_a_field = true; | ||||||||
914 | is_anon_substructure = | ||||||||
915 | (DECL_NAME (field)((contains_struct_check ((field), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 915, __FUNCTION__))->decl_minimal.name) == NULLnullptr | ||||||||
916 | && (TREE_CODE (TREE_TYPE (field))((enum tree_code) (((contains_struct_check ((field), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 916, __FUNCTION__))->typed.type))->base.code) == RECORD_TYPE | ||||||||
917 | || TREE_CODE (TREE_TYPE (field))((enum tree_code) (((contains_struct_check ((field), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 917, __FUNCTION__))->typed.type))->base.code) == UNION_TYPE)); | ||||||||
918 | /* Keep track of the alignment of named substructures, either | ||||||||
919 | of the whole record, or the alignment of the emitted field | ||||||||
920 | (for unions). */ | ||||||||
921 | decl_align_unit = DECL_ALIGN_UNIT (field)((((contains_struct_check ((field), (TS_DECL_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 921, __FUNCTION__))->decl_common.align) ? ((unsigned)1) << (((contains_struct_check ((field), (TS_DECL_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 921, __FUNCTION__))->decl_common.align) - 1) : 0) / (8)); | ||||||||
922 | if (!is_anon_substructure
| ||||||||
923 | known_alignment = decl_align_unit; | ||||||||
924 | /* Pad to start of field. */ | ||||||||
925 | decl_offset = | ||||||||
926 | TREE_INT_CST_LOW (DECL_FIELD_OFFSET (field))((unsigned long) (*tree_int_cst_elt_check ((((tree_check ((field ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 926, __FUNCTION__, (FIELD_DECL)))->field_decl.offset)), ( 0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 926, __FUNCTION__))) | ||||||||
927 | + precision_to_units | ||||||||
928 | (TREE_INT_CST_LOW (DECL_FIELD_BIT_OFFSET (field))((unsigned long) (*tree_int_cst_elt_check ((((tree_check ((field ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 928, __FUNCTION__, (FIELD_DECL)))->field_decl.bit_offset )), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 928, __FUNCTION__)))); | ||||||||
929 | { | ||||||||
930 | unsigned int align_unit; | ||||||||
931 | |||||||||
932 | /* For anonymous records and unions there is no automatic | ||||||||
933 | structure alignment, so use 1 as the alignment. */ | ||||||||
934 | align_unit = (is_anon_substructure
| ||||||||
935 | *p_art_i = go_append_padding | ||||||||
936 | (ob, prev_field_end, decl_offset, align_unit, *p_art_i, | ||||||||
937 | &prev_field_end); | ||||||||
938 | } | ||||||||
939 | if (DECL_SIZE_UNIT (field)((contains_struct_check ((field), (TS_DECL_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 939, __FUNCTION__))->decl_common.size_unit)) | ||||||||
940 | prev_field_end += | ||||||||
941 | TREE_INT_CST_LOW (DECL_SIZE_UNIT (field))((unsigned long) (*tree_int_cst_elt_check ((((contains_struct_check ((field), (TS_DECL_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 941, __FUNCTION__))->decl_common.size_unit)), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 941, __FUNCTION__))); | ||||||||
942 | /* Emit the field name, but not for anonymous records and | ||||||||
943 | unions. */ | ||||||||
944 | if (!is_anon_substructure) | ||||||||
945 | { | ||||||||
946 | if (DECL_NAME (field)((contains_struct_check ((field), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 946, __FUNCTION__))->decl_minimal.name) == NULLnullptr) | ||||||||
947 | *p_art_i = go_append_artificial_name (ob, *p_art_i); | ||||||||
948 | else | ||||||||
949 | go_append_decl_name | ||||||||
950 | (ob, field, container->keyword_hash); | ||||||||
951 | obstack_1grow (ob, ' ')__extension__ ({ struct obstack *__o = (ob); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < 1) _obstack_newchunk (__o, 1) ; ((void) (*((__o)->next_free)++ = (' '))); }); | ||||||||
952 | } | ||||||||
953 | /* Do not expand type if a record or union type or a function | ||||||||
954 | pointer. */ | ||||||||
955 | if (TYPE_NAME (TREE_TYPE (field))((tree_class_check ((((contains_struct_check ((field), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 955, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 955, __FUNCTION__))->type_common.name) != NULL_TREE(tree) nullptr | ||||||||
956 | && (RECORD_OR_UNION_TYPE_P (TREE_TYPE (field))(((enum tree_code) (((contains_struct_check ((field), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 956, __FUNCTION__))->typed.type))->base.code) == RECORD_TYPE || ((enum tree_code) (((contains_struct_check ((field), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 956, __FUNCTION__))->typed.type))->base.code) == UNION_TYPE || ((enum tree_code) (((contains_struct_check ((field), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 956, __FUNCTION__))->typed.type))->base.code) == QUAL_UNION_TYPE ) | ||||||||
957 | || (POINTER_TYPE_P (TREE_TYPE (field))(((enum tree_code) (((contains_struct_check ((field), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 957, __FUNCTION__))->typed.type))->base.code) == POINTER_TYPE || ((enum tree_code) (((contains_struct_check ((field), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 957, __FUNCTION__))->typed.type))->base.code) == REFERENCE_TYPE ) | ||||||||
958 | && (TREE_CODE (TREE_TYPE (TREE_TYPE (field)))((enum tree_code) (((contains_struct_check ((((contains_struct_check ((field), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 958, __FUNCTION__))->typed.type)), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 958, __FUNCTION__))->typed.type))->base.code) | ||||||||
959 | == FUNCTION_TYPE)))) | ||||||||
960 | { | ||||||||
961 | tree name; | ||||||||
962 | void **slot; | ||||||||
963 | |||||||||
964 | name = TYPE_IDENTIFIER (TREE_TYPE (field))(((tree_class_check ((((contains_struct_check ((field), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 964, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 964, __FUNCTION__))->type_common.name) && (tree_code_type [(int) (((enum tree_code) (((tree_class_check ((((contains_struct_check ((field), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 964, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 964, __FUNCTION__))->type_common.name))->base.code))] == tcc_declaration) ? ((contains_struct_check ((((tree_class_check ((((contains_struct_check ((field), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 964, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 964, __FUNCTION__))->type_common.name)), (TS_DECL_MINIMAL ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 964, __FUNCTION__))->decl_minimal.name) : ((tree_class_check ((((contains_struct_check ((field), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 964, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 964, __FUNCTION__))->type_common.name)); | ||||||||
965 | |||||||||
966 | slot = htab_find_slot (container->invalid_hash, | ||||||||
967 | IDENTIFIER_POINTER (name)((const char *) (tree_check ((name), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 967, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str ), | ||||||||
968 | NO_INSERT); | ||||||||
969 | if (slot != NULLnullptr) | ||||||||
970 | field_ok = false; | ||||||||
971 | |||||||||
972 | obstack_1grow (ob, '_')__extension__ ({ struct obstack *__o = (ob); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < 1) _obstack_newchunk (__o, 1) ; ((void) (*((__o)->next_free)++ = ('_'))); }); | ||||||||
973 | go_append_string (ob, name); | ||||||||
974 | } | ||||||||
975 | else | ||||||||
976 | { | ||||||||
977 | if (!go_format_type (container, TREE_TYPE (field)((contains_struct_check ((field), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 977, __FUNCTION__))->typed.type), true, | ||||||||
978 | false, p_art_i, is_anon_substructure)) | ||||||||
979 | field_ok = false; | ||||||||
980 | } | ||||||||
981 | if (!is_anon_substructure) | ||||||||
982 | obstack_grow (ob, "; ", 2)__extension__ ({ struct obstack *__o = (ob); size_t __len = ( 2); if (__extension__ ({ struct obstack const *__o1 = (__o); ( size_t) (__o1->chunk_limit - __o1->next_free); }) < __len ) _obstack_newchunk (__o, __len); memcpy (__o->next_free, "; " , __len); __o->next_free += __len; (void) 0; }); | ||||||||
983 | if (!field_ok) | ||||||||
984 | ret = false; | ||||||||
985 | } | ||||||||
986 | } | ||||||||
987 | /* Padding. */ | ||||||||
988 | *p_art_i = go_append_padding (ob, prev_field_end, | ||||||||
989 | TREE_INT_CST_LOW (TYPE_SIZE_UNIT (type))((unsigned long) (*tree_int_cst_elt_check ((((tree_class_check ((type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 989, __FUNCTION__))->type_common.size_unit)), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 989, __FUNCTION__))), | ||||||||
990 | 1, *p_art_i, &prev_field_end); | ||||||||
991 | /* Alignment. */ | ||||||||
992 | if (!is_anon_record_or_union | ||||||||
993 | && known_alignment < TYPE_ALIGN_UNIT (type)(((tree_class_check ((type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 993, __FUNCTION__))->type_common.align ? ((unsigned)1) << ((type)->type_common.align - 1) : 0) / (8))) | ||||||||
994 | { | ||||||||
995 | const char *s; | ||||||||
996 | char buf[100]; | ||||||||
997 | |||||||||
998 | /* Enforce proper record alignment. */ | ||||||||
999 | s = go_get_uinttype_for_precision | ||||||||
1000 | (TYPE_ALIGN (type)((tree_class_check ((type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1000, __FUNCTION__))->type_common.align ? ((unsigned)1) << ((type)->type_common.align - 1) : 0), TYPE_UNSIGNED (type)((tree_class_check ((type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1000, __FUNCTION__))->base.u.bits.unsigned_flag)); | ||||||||
1001 | if (s == NULLnullptr) | ||||||||
1002 | { | ||||||||
1003 | snprintf (buf, sizeof buf, "INVALID-int-%u%s", | ||||||||
1004 | TYPE_ALIGN (type)((tree_class_check ((type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1004, __FUNCTION__))->type_common.align ? ((unsigned)1) << ((type)->type_common.align - 1) : 0), TYPE_UNSIGNED (type)((tree_class_check ((type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1004, __FUNCTION__))->base.u.bits.unsigned_flag) ? "u" : ""); | ||||||||
1005 | s = buf; | ||||||||
1006 | ret = false; | ||||||||
1007 | } | ||||||||
1008 | *p_art_i = go_force_record_alignment (ob, s, *p_art_i, buf); | ||||||||
1009 | } | ||||||||
1010 | if (!is_anon_record_or_union) | ||||||||
1011 | obstack_1grow (ob, '}')__extension__ ({ struct obstack *__o = (ob); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < 1) _obstack_newchunk (__o, 1) ; ((void) (*((__o)->next_free)++ = ('}'))); }); | ||||||||
1012 | } | ||||||||
1013 | break; | ||||||||
1014 | |||||||||
1015 | case FUNCTION_TYPE: | ||||||||
1016 | { | ||||||||
1017 | tree arg_type; | ||||||||
1018 | bool is_varargs; | ||||||||
1019 | tree result; | ||||||||
1020 | function_args_iterator iter; | ||||||||
1021 | bool seen_arg; | ||||||||
1022 | |||||||||
1023 | /* Go has no way to write a type which is a function but not a | ||||||||
1024 | pointer to a function. */ | ||||||||
1025 | if (!is_func_ok) | ||||||||
1026 | { | ||||||||
1027 | obstack_grow (ob, "func*", 5)__extension__ ({ struct obstack *__o = (ob); size_t __len = ( 5); if (__extension__ ({ struct obstack const *__o1 = (__o); ( size_t) (__o1->chunk_limit - __o1->next_free); }) < __len ) _obstack_newchunk (__o, __len); memcpy (__o->next_free, "func*" , __len); __o->next_free += __len; (void) 0; }); | ||||||||
1028 | ret = false; | ||||||||
1029 | } | ||||||||
1030 | |||||||||
1031 | obstack_1grow (ob, '(')__extension__ ({ struct obstack *__o = (ob); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < 1) _obstack_newchunk (__o, 1) ; ((void) (*((__o)->next_free)++ = ('('))); }); | ||||||||
1032 | is_varargs = stdarg_p (type); | ||||||||
1033 | seen_arg = false; | ||||||||
1034 | FOREACH_FUNCTION_ARGS (type, arg_type, iter)for (function_args_iter_init (&(iter), (type)); (arg_type = function_args_iter_cond (&(iter))) != (tree) nullptr; function_args_iter_next (&(iter))) | ||||||||
1035 | { | ||||||||
1036 | if (VOID_TYPE_P (arg_type)(((enum tree_code) (arg_type)->base.code) == VOID_TYPE)) | ||||||||
1037 | break; | ||||||||
1038 | if (seen_arg) | ||||||||
1039 | obstack_grow (ob, ", ", 2)__extension__ ({ struct obstack *__o = (ob); size_t __len = ( 2); if (__extension__ ({ struct obstack const *__o1 = (__o); ( size_t) (__o1->chunk_limit - __o1->next_free); }) < __len ) _obstack_newchunk (__o, __len); memcpy (__o->next_free, ", " , __len); __o->next_free += __len; (void) 0; }); | ||||||||
1040 | if (!go_format_type (container, arg_type, true, false, NULLnullptr, false)) | ||||||||
1041 | ret = false; | ||||||||
1042 | seen_arg = true; | ||||||||
1043 | } | ||||||||
1044 | if (is_varargs) | ||||||||
1045 | { | ||||||||
1046 | if (prototype_p (type)) | ||||||||
1047 | obstack_grow (ob, ", ", 2)__extension__ ({ struct obstack *__o = (ob); size_t __len = ( 2); if (__extension__ ({ struct obstack const *__o1 = (__o); ( size_t) (__o1->chunk_limit - __o1->next_free); }) < __len ) _obstack_newchunk (__o, __len); memcpy (__o->next_free, ", " , __len); __o->next_free += __len; (void) 0; }); | ||||||||
1048 | obstack_grow (ob, "...interface{}", 14)__extension__ ({ struct obstack *__o = (ob); size_t __len = ( 14); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < __len) _obstack_newchunk (__o, __len); memcpy (__o->next_free , "...interface{}", __len); __o->next_free += __len; (void ) 0; }); | ||||||||
1049 | } | ||||||||
1050 | obstack_1grow (ob, ')')__extension__ ({ struct obstack *__o = (ob); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < 1) _obstack_newchunk (__o, 1) ; ((void) (*((__o)->next_free)++ = (')'))); }); | ||||||||
1051 | |||||||||
1052 | result = TREE_TYPE (type)((contains_struct_check ((type), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1052, __FUNCTION__))->typed.type); | ||||||||
1053 | if (!VOID_TYPE_P (result)(((enum tree_code) (result)->base.code) == VOID_TYPE)) | ||||||||
1054 | { | ||||||||
1055 | obstack_1grow (ob, ' ')__extension__ ({ struct obstack *__o = (ob); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < 1) _obstack_newchunk (__o, 1) ; ((void) (*((__o)->next_free)++ = (' '))); }); | ||||||||
1056 | if (!go_format_type (container, result, use_type_name, false, NULLnullptr, | ||||||||
1057 | false)) | ||||||||
1058 | ret = false; | ||||||||
1059 | } | ||||||||
1060 | } | ||||||||
1061 | break; | ||||||||
1062 | |||||||||
1063 | default: | ||||||||
1064 | obstack_grow (ob, "INVALID-type", 12)__extension__ ({ struct obstack *__o = (ob); size_t __len = ( 12); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < __len) _obstack_newchunk (__o, __len); memcpy (__o->next_free , "INVALID-type", __len); __o->next_free += __len; (void) 0 ; }); | ||||||||
1065 | ret = false; | ||||||||
1066 | break; | ||||||||
1067 | } | ||||||||
1068 | |||||||||
1069 | return ret; | ||||||||
1070 | } | ||||||||
1071 | |||||||||
1072 | /* Output the type which was built on the type obstack, and then free | ||||||||
1073 | it. */ | ||||||||
1074 | |||||||||
1075 | static void | ||||||||
1076 | go_output_type (class godump_container *container) | ||||||||
1077 | { | ||||||||
1078 | struct obstack *ob; | ||||||||
1079 | |||||||||
1080 | ob = &container->type_obstack; | ||||||||
1081 | obstack_1grow (ob, '\0')__extension__ ({ struct obstack *__o = (ob); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < 1) _obstack_newchunk (__o, 1) ; ((void) (*((__o)->next_free)++ = ('\0'))); }); | ||||||||
1082 | fputs ((char *) obstack_base (ob)((void *) (ob)->object_base), go_dump_file); | ||||||||
1083 | obstack_free (ob, obstack_base (ob))__extension__ ({ struct obstack *__o = (ob); void *__obj = (void *) (((void *) (ob)->object_base)); if (__obj > (void * ) __o->chunk && __obj < (void *) __o->chunk_limit ) __o->next_free = __o->object_base = (char *) __obj; else _obstack_free (__o, __obj); }); | ||||||||
1084 | } | ||||||||
1085 | |||||||||
1086 | /* Output a function declaration. */ | ||||||||
1087 | |||||||||
1088 | static void | ||||||||
1089 | go_output_fndecl (class godump_container *container, tree decl) | ||||||||
1090 | { | ||||||||
1091 | if (!go_format_type (container, TREE_TYPE (decl)((contains_struct_check ((decl), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1091, __FUNCTION__))->typed.type), true, true, NULLnullptr, false)) | ||||||||
1092 | fprintf (go_dump_file, "// "); | ||||||||
1093 | fprintf (go_dump_file, "func _%s ", | ||||||||
1094 | IDENTIFIER_POINTER (DECL_NAME (decl))((const char *) (tree_check ((((contains_struct_check ((decl) , (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1094, __FUNCTION__))->decl_minimal.name)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1094, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str )); | ||||||||
1095 | go_output_type (container); | ||||||||
1096 | fprintf (go_dump_file, " __asm__(\"%s\")\n", | ||||||||
1097 | IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (decl))((const char *) (tree_check ((decl_assembler_name (decl)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1097, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str )); | ||||||||
1098 | } | ||||||||
1099 | |||||||||
1100 | /* Output a typedef or something like a struct definition. */ | ||||||||
1101 | |||||||||
1102 | static void | ||||||||
1103 | go_output_typedef (class godump_container *container, tree decl) | ||||||||
1104 | { | ||||||||
1105 | /* If we have an enum type, output the enum constants | ||||||||
1106 | separately. */ | ||||||||
1107 | if (TREE_CODE (TREE_TYPE (decl))((enum tree_code) (((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1107, __FUNCTION__))->typed.type))->base.code) == ENUMERAL_TYPE | ||||||||
1108 | && TYPE_SIZE (TREE_TYPE (decl))((tree_class_check ((((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1108, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1108, __FUNCTION__))->type_common.size) != 0 | ||||||||
1109 | && !container->decls_seen.contains (TREE_TYPE (decl)((contains_struct_check ((decl), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1109, __FUNCTION__))->typed.type)) | ||||||||
1110 | && (TYPE_CANONICAL (TREE_TYPE (decl))((tree_class_check ((((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1110, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1110, __FUNCTION__))->type_common.canonical) == NULL_TREE(tree) nullptr | ||||||||
1111 | || !container->decls_seen.contains | ||||||||
1112 | (TYPE_CANONICAL (TREE_TYPE (decl))((tree_class_check ((((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1112, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1112, __FUNCTION__))->type_common.canonical)))) | ||||||||
1113 | { | ||||||||
1114 | tree element; | ||||||||
1115 | |||||||||
1116 | for (element = TYPE_VALUES (TREE_TYPE (decl))((tree_check ((((contains_struct_check ((decl), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1116, __FUNCTION__))->typed.type)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1116, __FUNCTION__, (ENUMERAL_TYPE)))->type_non_common.values ); | ||||||||
1117 | element != NULL_TREE(tree) nullptr; | ||||||||
1118 | element = TREE_CHAIN (element)((contains_struct_check ((element), (TS_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1118, __FUNCTION__))->common.chain)) | ||||||||
1119 | { | ||||||||
1120 | const char *name; | ||||||||
1121 | struct macro_hash_value *mhval; | ||||||||
1122 | void **slot; | ||||||||
1123 | char buf[WIDE_INT_PRINT_BUFFER_SIZE((((160 + 64) / 64) * 64) / 4 + 4)]; | ||||||||
1124 | |||||||||
1125 | name = IDENTIFIER_POINTER (TREE_PURPOSE (element))((const char *) (tree_check ((((tree_check ((element), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1125, __FUNCTION__, (TREE_LIST)))->list.purpose)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1125, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str ); | ||||||||
1126 | |||||||||
1127 | /* Sometimes a name will be defined as both an enum constant | ||||||||
1128 | and a macro. Avoid duplicate definition errors by | ||||||||
1129 | treating enum constants as macros. */ | ||||||||
1130 | mhval = XNEW (struct macro_hash_value)((struct macro_hash_value *) xmalloc (sizeof (struct macro_hash_value ))); | ||||||||
1131 | mhval->name = xstrdup (name); | ||||||||
1132 | mhval->value = NULLnullptr; | ||||||||
1133 | slot = htab_find_slot (macro_hash, mhval, INSERT); | ||||||||
1134 | if (*slot != NULLnullptr) | ||||||||
1135 | macro_hash_del (*slot); | ||||||||
1136 | |||||||||
1137 | if (tree_fits_shwi_p (TREE_VALUE (element)((tree_check ((element), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1137, __FUNCTION__, (TREE_LIST)))->list.value))) | ||||||||
1138 | snprintf (buf, sizeof buf, HOST_WIDE_INT_PRINT_DEC"%" "l" "d", | ||||||||
1139 | tree_to_shwi (TREE_VALUE (element)((tree_check ((element), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1139, __FUNCTION__, (TREE_LIST)))->list.value))); | ||||||||
1140 | else if (tree_fits_uhwi_p (TREE_VALUE (element)((tree_check ((element), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1140, __FUNCTION__, (TREE_LIST)))->list.value))) | ||||||||
1141 | snprintf (buf, sizeof buf, HOST_WIDE_INT_PRINT_UNSIGNED"%" "l" "u", | ||||||||
1142 | tree_to_uhwi (TREE_VALUE (element)((tree_check ((element), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1142, __FUNCTION__, (TREE_LIST)))->list.value))); | ||||||||
1143 | else | ||||||||
1144 | print_hex (wi::to_wide (element), buf); | ||||||||
1145 | |||||||||
1146 | mhval->value = xstrdup (buf); | ||||||||
1147 | *slot = mhval; | ||||||||
1148 | } | ||||||||
1149 | container->decls_seen.add (TREE_TYPE (decl)((contains_struct_check ((decl), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1149, __FUNCTION__))->typed.type)); | ||||||||
1150 | if (TYPE_CANONICAL (TREE_TYPE (decl))((tree_class_check ((((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1150, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1150, __FUNCTION__))->type_common.canonical) != NULL_TREE(tree) nullptr) | ||||||||
1151 | container->decls_seen.add (TYPE_CANONICAL (TREE_TYPE (decl))((tree_class_check ((((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1151, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1151, __FUNCTION__))->type_common.canonical)); | ||||||||
1152 | } | ||||||||
1153 | |||||||||
1154 | if (DECL_NAME (decl)((contains_struct_check ((decl), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1154, __FUNCTION__))->decl_minimal.name) != NULL_TREE(tree) nullptr) | ||||||||
1155 | { | ||||||||
1156 | void **slot; | ||||||||
1157 | const char *type; | ||||||||
1158 | tree original_type; | ||||||||
1159 | |||||||||
1160 | type = IDENTIFIER_POINTER (DECL_NAME (decl))((const char *) (tree_check ((((contains_struct_check ((decl) , (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1160, __FUNCTION__))->decl_minimal.name)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1160, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str ); | ||||||||
1161 | original_type = DECL_ORIGINAL_TYPE (decl)((tree_check ((decl), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1161, __FUNCTION__, (TYPE_DECL)))->decl_non_common.result ); | ||||||||
1162 | if (original_type == NULL_TREE(tree) nullptr) | ||||||||
1163 | original_type = TREE_TYPE (decl)((contains_struct_check ((decl), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1163, __FUNCTION__))->typed.type); | ||||||||
1164 | |||||||||
1165 | /* Suppress typedefs where the type name matches the underlying | ||||||||
1166 | struct/union/enum tag. This way we'll emit the struct definition | ||||||||
1167 | instead of an invalid recursive type. */ | ||||||||
1168 | if (TYPE_IDENTIFIER (original_type)(((tree_class_check ((original_type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1168, __FUNCTION__))->type_common.name) && (tree_code_type [(int) (((enum tree_code) (((tree_class_check ((original_type ), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1168, __FUNCTION__))->type_common.name))->base.code)) ] == tcc_declaration) ? ((contains_struct_check ((((tree_class_check ((original_type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1168, __FUNCTION__))->type_common.name)), (TS_DECL_MINIMAL ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1168, __FUNCTION__))->decl_minimal.name) : ((tree_class_check ((original_type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1168, __FUNCTION__))->type_common.name)) != NULLnullptr | ||||||||
1169 | && IDENTIFIER_POINTER (TYPE_IDENTIFIER (original_type))((const char *) (tree_check (((((tree_class_check ((original_type ), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1169, __FUNCTION__))->type_common.name) && (tree_code_type [(int) (((enum tree_code) (((tree_class_check ((original_type ), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1169, __FUNCTION__))->type_common.name))->base.code)) ] == tcc_declaration) ? ((contains_struct_check ((((tree_class_check ((original_type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1169, __FUNCTION__))->type_common.name)), (TS_DECL_MINIMAL ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1169, __FUNCTION__))->decl_minimal.name) : ((tree_class_check ((original_type), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1169, __FUNCTION__))->type_common.name))), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1169, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str ) == type) | ||||||||
1170 | return; | ||||||||
1171 | |||||||||
1172 | /* If type defined already, skip. */ | ||||||||
1173 | slot = htab_find_slot (container->type_hash, type, INSERT); | ||||||||
1174 | if (*slot != NULLnullptr) | ||||||||
1175 | return; | ||||||||
1176 | *slot = CONST_CAST (void *, (const void *) type)(const_cast<void *> (((const void *) type))); | ||||||||
1177 | |||||||||
1178 | if (!go_format_type (container, original_type, true, false, | ||||||||
1179 | NULLnullptr, false)) | ||||||||
1180 | { | ||||||||
1181 | fprintf (go_dump_file, "// "); | ||||||||
1182 | slot = htab_find_slot (container->invalid_hash, type, INSERT); | ||||||||
1183 | *slot = CONST_CAST (void *, (const void *) type)(const_cast<void *> (((const void *) type))); | ||||||||
1184 | } | ||||||||
1185 | fprintf (go_dump_file, "type _%s ", | ||||||||
1186 | IDENTIFIER_POINTER (DECL_NAME (decl))((const char *) (tree_check ((((contains_struct_check ((decl) , (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1186, __FUNCTION__))->decl_minimal.name)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1186, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str )); | ||||||||
1187 | go_output_type (container); | ||||||||
1188 | |||||||||
1189 | if (RECORD_OR_UNION_TYPE_P (TREE_TYPE (decl))(((enum tree_code) (((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1189, __FUNCTION__))->typed.type))->base.code) == RECORD_TYPE || ((enum tree_code) (((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1189, __FUNCTION__))->typed.type))->base.code) == UNION_TYPE || ((enum tree_code) (((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1189, __FUNCTION__))->typed.type))->base.code) == QUAL_UNION_TYPE )) | ||||||||
1190 | { | ||||||||
1191 | HOST_WIDE_INTlong size = int_size_in_bytes (TREE_TYPE (decl)((contains_struct_check ((decl), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1191, __FUNCTION__))->typed.type)); | ||||||||
1192 | |||||||||
1193 | if (size > 0) | ||||||||
1194 | fprintf (go_dump_file, | ||||||||
1195 | "\nconst _sizeof_%s = " HOST_WIDE_INT_PRINT_DEC"%" "l" "d", | ||||||||
1196 | IDENTIFIER_POINTER (DECL_NAME (decl))((const char *) (tree_check ((((contains_struct_check ((decl) , (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1196, __FUNCTION__))->decl_minimal.name)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1196, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str ), | ||||||||
1197 | size); | ||||||||
1198 | } | ||||||||
1199 | |||||||||
1200 | container->decls_seen.add (decl); | ||||||||
1201 | } | ||||||||
1202 | else if ((RECORD_OR_UNION_TYPE_P (TREE_TYPE (decl))(((enum tree_code) (((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1202, __FUNCTION__))->typed.type))->base.code) == RECORD_TYPE || ((enum tree_code) (((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1202, __FUNCTION__))->typed.type))->base.code) == UNION_TYPE || ((enum tree_code) (((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1202, __FUNCTION__))->typed.type))->base.code) == QUAL_UNION_TYPE ) | ||||||||
1203 | || TREE_CODE (TREE_TYPE (decl))((enum tree_code) (((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1203, __FUNCTION__))->typed.type))->base.code) == ENUMERAL_TYPE) | ||||||||
1204 | && TYPE_NAME (TREE_TYPE (decl))((tree_class_check ((((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1204, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1204, __FUNCTION__))->type_common.name) != NULLnullptr) | ||||||||
1205 | { | ||||||||
1206 | void **slot; | ||||||||
1207 | const char *type; | ||||||||
1208 | HOST_WIDE_INTlong size; | ||||||||
1209 | |||||||||
1210 | type = IDENTIFIER_POINTER (TYPE_NAME (TREE_TYPE ((decl))))((const char *) (tree_check ((((tree_class_check ((((contains_struct_check (((decl)), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1210, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1210, __FUNCTION__))->type_common.name)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1210, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str ); | ||||||||
1211 | /* If type defined already, skip. */ | ||||||||
1212 | slot = htab_find_slot (container->type_hash, type, INSERT); | ||||||||
1213 | if (*slot != NULLnullptr) | ||||||||
1214 | return; | ||||||||
1215 | *slot = CONST_CAST (void *, (const void *) type)(const_cast<void *> (((const void *) type))); | ||||||||
1216 | |||||||||
1217 | if (!go_format_type (container, TREE_TYPE (decl)((contains_struct_check ((decl), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1217, __FUNCTION__))->typed.type), false, false, NULLnullptr, | ||||||||
1218 | false)) | ||||||||
1219 | { | ||||||||
1220 | fprintf (go_dump_file, "// "); | ||||||||
1221 | slot = htab_find_slot (container->invalid_hash, type, INSERT); | ||||||||
1222 | *slot = CONST_CAST (void *, (const void *) type)(const_cast<void *> (((const void *) type))); | ||||||||
1223 | } | ||||||||
1224 | fprintf (go_dump_file, "type _%s ", | ||||||||
1225 | IDENTIFIER_POINTER (TYPE_NAME (TREE_TYPE (decl)))((const char *) (tree_check ((((tree_class_check ((((contains_struct_check ((decl), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1225, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1225, __FUNCTION__))->type_common.name)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1225, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str )); | ||||||||
1226 | go_output_type (container); | ||||||||
1227 | |||||||||
1228 | size = int_size_in_bytes (TREE_TYPE (decl)((contains_struct_check ((decl), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1228, __FUNCTION__))->typed.type)); | ||||||||
1229 | if (size > 0) | ||||||||
1230 | fprintf (go_dump_file, | ||||||||
1231 | "\nconst _sizeof_%s = " HOST_WIDE_INT_PRINT_DEC"%" "l" "d", | ||||||||
1232 | IDENTIFIER_POINTER (TYPE_NAME (TREE_TYPE (decl)))((const char *) (tree_check ((((tree_class_check ((((contains_struct_check ((decl), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1232, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1232, __FUNCTION__))->type_common.name)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1232, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str ), | ||||||||
1233 | size); | ||||||||
1234 | } | ||||||||
1235 | else | ||||||||
1236 | return; | ||||||||
1237 | |||||||||
1238 | fprintf (go_dump_file, "\n"); | ||||||||
1239 | } | ||||||||
1240 | |||||||||
1241 | /* Output a variable. */ | ||||||||
1242 | |||||||||
1243 | static void | ||||||||
1244 | go_output_var (class godump_container *container, tree decl) | ||||||||
1245 | { | ||||||||
1246 | bool is_valid; | ||||||||
1247 | tree type_name; | ||||||||
1248 | tree id; | ||||||||
1249 | |||||||||
1250 | if (container->decls_seen.contains (decl) | ||||||||
1251 | || container->decls_seen.contains (DECL_NAME (decl)((contains_struct_check ((decl), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1251, __FUNCTION__))->decl_minimal.name))) | ||||||||
1252 | return; | ||||||||
1253 | container->decls_seen.add (decl); | ||||||||
1254 | container->decls_seen.add (DECL_NAME (decl)((contains_struct_check ((decl), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1254, __FUNCTION__))->decl_minimal.name)); | ||||||||
1255 | |||||||||
1256 | type_name = TYPE_NAME (TREE_TYPE (decl))((tree_class_check ((((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1256, __FUNCTION__))->typed.type)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1256, __FUNCTION__))->type_common.name); | ||||||||
1257 | id = NULL_TREE(tree) nullptr; | ||||||||
1258 | if (type_name != NULL_TREE(tree) nullptr && TREE_CODE (type_name)((enum tree_code) (type_name)->base.code) == IDENTIFIER_NODE) | ||||||||
1259 | id = type_name; | ||||||||
1260 | else if (type_name != NULL_TREE(tree) nullptr && TREE_CODE (type_name)((enum tree_code) (type_name)->base.code) == TYPE_DECL | ||||||||
1261 | && DECL_SOURCE_LOCATION (type_name)((contains_struct_check ((type_name), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1261, __FUNCTION__))->decl_minimal.locus) != BUILTINS_LOCATION((location_t) 1) | ||||||||
1262 | && DECL_NAME (type_name)((contains_struct_check ((type_name), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1262, __FUNCTION__))->decl_minimal.name)) | ||||||||
1263 | id = DECL_NAME (type_name)((contains_struct_check ((type_name), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1263, __FUNCTION__))->decl_minimal.name); | ||||||||
1264 | if (id != NULL_TREE(tree) nullptr | ||||||||
1265 | && (!htab_find_slot (container->type_hash, IDENTIFIER_POINTER (id)((const char *) (tree_check ((id), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1265, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str ), | ||||||||
1266 | NO_INSERT) | ||||||||
1267 | || htab_find_slot (container->invalid_hash, IDENTIFIER_POINTER (id)((const char *) (tree_check ((id), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1267, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str ), | ||||||||
1268 | NO_INSERT))) | ||||||||
1269 | id = NULL_TREE(tree) nullptr; | ||||||||
1270 | if (id != NULL_TREE(tree) nullptr) | ||||||||
1271 | { | ||||||||
1272 | struct obstack *ob; | ||||||||
1273 | |||||||||
1274 | ob = &container->type_obstack; | ||||||||
1275 | obstack_1grow (ob, '_')__extension__ ({ struct obstack *__o = (ob); if (__extension__ ({ struct obstack const *__o1 = (__o); (size_t) (__o1->chunk_limit - __o1->next_free); }) < 1) _obstack_newchunk (__o, 1) ; ((void) (*((__o)->next_free)++ = ('_'))); }); | ||||||||
1276 | go_append_string (ob, id); | ||||||||
1277 | is_valid = htab_find_slot (container->type_hash, IDENTIFIER_POINTER (id)((const char *) (tree_check ((id), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1277, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str ), | ||||||||
1278 | NO_INSERT) != NULLnullptr; | ||||||||
1279 | } | ||||||||
1280 | else | ||||||||
1281 | is_valid = go_format_type (container, TREE_TYPE (decl)((contains_struct_check ((decl), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1281, __FUNCTION__))->typed.type), true, false, NULLnullptr, | ||||||||
1282 | false); | ||||||||
1283 | if (is_valid | ||||||||
1284 | && htab_find_slot (container->type_hash, | ||||||||
1285 | IDENTIFIER_POINTER (DECL_NAME (decl))((const char *) (tree_check ((((contains_struct_check ((decl) , (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1285, __FUNCTION__))->decl_minimal.name)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1285, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str ), | ||||||||
1286 | NO_INSERT) != NULLnullptr) | ||||||||
1287 | { | ||||||||
1288 | /* There is already a type with this name, probably from a | ||||||||
1289 | struct tag. Prefer the type to the variable. */ | ||||||||
1290 | is_valid = false; | ||||||||
1291 | } | ||||||||
1292 | if (!is_valid) | ||||||||
1293 | fprintf (go_dump_file, "// "); | ||||||||
1294 | |||||||||
1295 | fprintf (go_dump_file, "var _%s ", | ||||||||
1296 | IDENTIFIER_POINTER (DECL_NAME (decl))((const char *) (tree_check ((((contains_struct_check ((decl) , (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1296, __FUNCTION__))->decl_minimal.name)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1296, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str )); | ||||||||
1297 | go_output_type (container); | ||||||||
1298 | fprintf (go_dump_file, "\n"); | ||||||||
1299 | |||||||||
1300 | /* Sometimes an extern variable is declared with an unknown struct | ||||||||
1301 | type. */ | ||||||||
1302 | if (type_name != NULL_TREE(tree) nullptr && RECORD_OR_UNION_TYPE_P (TREE_TYPE (decl))(((enum tree_code) (((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1302, __FUNCTION__))->typed.type))->base.code) == RECORD_TYPE || ((enum tree_code) (((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1302, __FUNCTION__))->typed.type))->base.code) == UNION_TYPE || ((enum tree_code) (((contains_struct_check ((decl), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1302, __FUNCTION__))->typed.type))->base.code) == QUAL_UNION_TYPE )) | ||||||||
1303 | { | ||||||||
1304 | if (TREE_CODE (type_name)((enum tree_code) (type_name)->base.code) == IDENTIFIER_NODE) | ||||||||
1305 | container->pot_dummy_types.add (IDENTIFIER_POINTER (type_name)((const char *) (tree_check ((type_name), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1305, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str )); | ||||||||
1306 | else if (TREE_CODE (type_name)((enum tree_code) (type_name)->base.code) == TYPE_DECL) | ||||||||
1307 | container->pot_dummy_types.add | ||||||||
1308 | (IDENTIFIER_POINTER (DECL_NAME (type_name))((const char *) (tree_check ((((contains_struct_check ((type_name ), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1308, __FUNCTION__))->decl_minimal.name)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1308, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str )); | ||||||||
1309 | } | ||||||||
1310 | } | ||||||||
1311 | |||||||||
1312 | /* Output the final value of a preprocessor macro or enum constant. | ||||||||
1313 | This is called via htab_traverse_noresize. */ | ||||||||
1314 | |||||||||
1315 | static int | ||||||||
1316 | go_print_macro (void **slot, void *arg ATTRIBUTE_UNUSED__attribute__ ((__unused__))) | ||||||||
1317 | { | ||||||||
1318 | struct macro_hash_value *mhval = (struct macro_hash_value *) *slot; | ||||||||
1319 | fprintf (go_dump_file, "const _%s = %s\n", mhval->name, mhval->value); | ||||||||
1320 | return 1; | ||||||||
1321 | } | ||||||||
1322 | |||||||||
1323 | /* Build a hash table with the Go keywords. */ | ||||||||
1324 | |||||||||
1325 | static const char * const keywords[] = { | ||||||||
1326 | "__asm__", "break", "case", "chan", "const", "continue", "default", | ||||||||
1327 | "defer", "else", "fallthrough", "for", "func", "go", "goto", "if", | ||||||||
1328 | "import", "interface", "map", "package", "range", "return", "select", | ||||||||
1329 | "struct", "switch", "type", "var" | ||||||||
1330 | }; | ||||||||
1331 | |||||||||
1332 | static void | ||||||||
1333 | keyword_hash_init (class godump_container *container) | ||||||||
1334 | { | ||||||||
1335 | size_t i; | ||||||||
1336 | size_t count = sizeof (keywords) / sizeof (keywords[0]); | ||||||||
1337 | void **slot; | ||||||||
1338 | |||||||||
1339 | for (i = 0; i < count; i++) | ||||||||
1340 | { | ||||||||
1341 | slot = htab_find_slot (container->keyword_hash, keywords[i], INSERT); | ||||||||
1342 | *slot = CONST_CAST (void *, (const void *) keywords[i])(const_cast<void *> (((const void *) keywords[i]))); | ||||||||
1343 | } | ||||||||
1344 | } | ||||||||
1345 | |||||||||
1346 | /* Traversing the pot_dummy_types and seeing which types are present | ||||||||
1347 | in the global types hash table and creating dummy definitions if | ||||||||
1348 | not found. This function is invoked by hash_set::traverse. */ | ||||||||
1349 | |||||||||
1350 | bool | ||||||||
1351 | find_dummy_types (const char *const &ptr, godump_container *adata) | ||||||||
1352 | { | ||||||||
1353 | class godump_container *data = (class godump_container *) adata; | ||||||||
1354 | const char *type = (const char *) ptr; | ||||||||
1355 | void **slot; | ||||||||
1356 | void **islot; | ||||||||
1357 | |||||||||
1358 | slot = htab_find_slot (data->type_hash, type, NO_INSERT); | ||||||||
1359 | islot = htab_find_slot (data->invalid_hash, type, NO_INSERT); | ||||||||
1360 | if (slot == NULLnullptr || islot != NULLnullptr) | ||||||||
1361 | fprintf (go_dump_file, "type _%s struct {}\n", type); | ||||||||
1362 | return true; | ||||||||
1363 | } | ||||||||
1364 | |||||||||
1365 | /* Output symbols. */ | ||||||||
1366 | |||||||||
1367 | static void | ||||||||
1368 | go_finish (const char *filename) | ||||||||
1369 | { | ||||||||
1370 | class godump_container container; | ||||||||
1371 | unsigned int ix; | ||||||||
1372 | tree decl; | ||||||||
1373 | |||||||||
1374 | real_debug_hooks->finish (filename); | ||||||||
1375 | |||||||||
1376 | container.type_hash = htab_create (100, htab_hash_string, | ||||||||
1377 | string_hash_eq, NULLnullptr); | ||||||||
1378 | container.invalid_hash = htab_create (10, htab_hash_string, | ||||||||
1379 | string_hash_eq, NULLnullptr); | ||||||||
1380 | container.keyword_hash = htab_create (50, htab_hash_string, | ||||||||
1381 | string_hash_eq, NULLnullptr); | ||||||||
1382 | obstack_init (&container.type_obstack)_obstack_begin ((&container.type_obstack), 0, 0, (mempool_obstack_chunk_alloc ), (mempool_obstack_chunk_free)); | ||||||||
1383 | |||||||||
1384 | keyword_hash_init (&container); | ||||||||
1385 | |||||||||
1386 | FOR_EACH_VEC_SAFE_ELT (queue, ix, decl)for (ix = 0; vec_safe_iterate ((queue), (ix), &(decl)); ++ (ix)) | ||||||||
1387 | { | ||||||||
1388 | switch (TREE_CODE (decl)((enum tree_code) (decl)->base.code)) | ||||||||
1389 | { | ||||||||
1390 | case FUNCTION_DECL: | ||||||||
1391 | go_output_fndecl (&container, decl); | ||||||||
1392 | break; | ||||||||
1393 | |||||||||
1394 | case TYPE_DECL: | ||||||||
1395 | go_output_typedef (&container, decl); | ||||||||
1396 | break; | ||||||||
1397 | |||||||||
1398 | case VAR_DECL: | ||||||||
1399 | go_output_var (&container, decl); | ||||||||
1400 | break; | ||||||||
1401 | |||||||||
1402 | default: | ||||||||
1403 | gcc_unreachable ()(fancy_abort ("/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/godump.c" , 1403, __FUNCTION__)); | ||||||||
1404 | } | ||||||||
1405 | } | ||||||||
1406 | |||||||||
1407 | htab_traverse_noresize (macro_hash, go_print_macro, NULLnullptr); | ||||||||
1408 | |||||||||
1409 | /* To emit dummy definitions. */ | ||||||||
1410 | container.pot_dummy_types.traverse<godump_container *, find_dummy_types> | ||||||||
1411 | (&container); | ||||||||
1412 | |||||||||
1413 | htab_delete (container.type_hash); | ||||||||
1414 | htab_delete (container.invalid_hash); | ||||||||
1415 | htab_delete (container.keyword_hash); | ||||||||
1416 | obstack_free (&container.type_obstack, NULL)__extension__ ({ struct obstack *__o = (&container.type_obstack ); void *__obj = (void *) (nullptr); if (__obj > (void *) __o ->chunk && __obj < (void *) __o->chunk_limit ) __o->next_free = __o->object_base = (char *) __obj; else _obstack_free (__o, __obj); }); | ||||||||
1417 | |||||||||
1418 | vec_free (queue); | ||||||||
1419 | |||||||||
1420 | if (fclose (go_dump_file) != 0) | ||||||||
1421 | error ("could not close Go dump file: %m"); | ||||||||
1422 | go_dump_file = NULLnullptr; | ||||||||
1423 | } | ||||||||
1424 | |||||||||
1425 | /* Set up our hooks. */ | ||||||||
1426 | |||||||||
1427 | const struct gcc_debug_hooks * | ||||||||
1428 | dump_go_spec_init (const char *filename, const struct gcc_debug_hooks *hooks) | ||||||||
1429 | { | ||||||||
1430 | go_dump_file = fopen (filename, "w"); | ||||||||
1431 | if (go_dump_file == NULLnullptr) | ||||||||
1432 | { | ||||||||
1433 | error ("could not open Go dump file %qs: %m", filename); | ||||||||
1434 | return hooks; | ||||||||
1435 | } | ||||||||
1436 | |||||||||
1437 | go_debug_hooks = *hooks; | ||||||||
1438 | real_debug_hooks = hooks; | ||||||||
1439 | |||||||||
1440 | go_debug_hooks.finish = go_finish; | ||||||||
1441 | go_debug_hooks.define = go_define; | ||||||||
1442 | go_debug_hooks.undef = go_undef; | ||||||||
1443 | go_debug_hooks.function_decl = go_function_decl; | ||||||||
1444 | go_debug_hooks.early_global_decl = go_early_global_decl; | ||||||||
1445 | go_debug_hooks.late_global_decl = go_late_global_decl; | ||||||||
1446 | go_debug_hooks.type_decl = go_type_decl; | ||||||||
1447 | |||||||||
1448 | macro_hash = htab_create (100, macro_hash_hashval, macro_hash_eq, | ||||||||
1449 | macro_hash_del); | ||||||||
1450 | |||||||||
1451 | return &go_debug_hooks; | ||||||||
1452 | } | ||||||||
1453 | |||||||||
1454 | #include "gt-godump.h" |
1 | /* Definitions for the ubiquitous 'tree' type for GNU compilers. |
2 | Copyright (C) 1989-2021 Free Software Foundation, Inc. |
3 | |
4 | This file is part of GCC. |
5 | |
6 | GCC is free software; you can redistribute it and/or modify it under |
7 | the terms of the GNU General Public License as published by the Free |
8 | Software Foundation; either version 3, or (at your option) any later |
9 | version. |
10 | |
11 | GCC is distributed in the hope that it will be useful, but WITHOUT ANY |
12 | WARRANTY; without even the implied warranty of MERCHANTABILITY or |
13 | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
14 | for more details. |
15 | |
16 | You should have received a copy of the GNU General Public License |
17 | along with GCC; see the file COPYING3. If not see |
18 | <http://www.gnu.org/licenses/>. */ |
19 | |
20 | #ifndef GCC_TREE_H |
21 | #define GCC_TREE_H |
22 | |
23 | #include "tree-core.h" |
24 | |
25 | /* Convert a target-independent built-in function code to a combined_fn. */ |
26 | |
27 | inline combined_fn |
28 | as_combined_fn (built_in_function fn) |
29 | { |
30 | return combined_fn (int (fn)); |
31 | } |
32 | |
33 | /* Convert an internal function code to a combined_fn. */ |
34 | |
35 | inline combined_fn |
36 | as_combined_fn (internal_fn fn) |
37 | { |
38 | return combined_fn (int (fn) + int (END_BUILTINS)); |
39 | } |
40 | |
41 | /* Return true if CODE is a target-independent built-in function. */ |
42 | |
43 | inline bool |
44 | builtin_fn_p (combined_fn code) |
45 | { |
46 | return int (code) < int (END_BUILTINS); |
47 | } |
48 | |
49 | /* Return the target-independent built-in function represented by CODE. |
50 | Only valid if builtin_fn_p (CODE). */ |
51 | |
52 | inline built_in_function |
53 | as_builtin_fn (combined_fn code) |
54 | { |
55 | gcc_checking_assert (builtin_fn_p (code))((void)(!(builtin_fn_p (code)) ? fancy_abort ("/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 55, __FUNCTION__), 0 : 0)); |
56 | return built_in_function (int (code)); |
57 | } |
58 | |
59 | /* Return true if CODE is an internal function. */ |
60 | |
61 | inline bool |
62 | internal_fn_p (combined_fn code) |
63 | { |
64 | return int (code) >= int (END_BUILTINS); |
65 | } |
66 | |
67 | /* Return the internal function represented by CODE. Only valid if |
68 | internal_fn_p (CODE). */ |
69 | |
70 | inline internal_fn |
71 | as_internal_fn (combined_fn code) |
72 | { |
73 | gcc_checking_assert (internal_fn_p (code))((void)(!(internal_fn_p (code)) ? fancy_abort ("/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 73, __FUNCTION__), 0 : 0)); |
74 | return internal_fn (int (code) - int (END_BUILTINS)); |
75 | } |
76 | |
77 | /* Macros for initializing `tree_contains_struct'. */ |
78 | #define MARK_TS_BASE(C)(tree_contains_struct[C][TS_BASE] = true) \ |
79 | (tree_contains_struct[C][TS_BASE] = true) |
80 | |
81 | #define MARK_TS_TYPED(C)((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true) \ |
82 | (MARK_TS_BASE (C)(tree_contains_struct[C][TS_BASE] = true), \ |
83 | tree_contains_struct[C][TS_TYPED] = true) |
84 | |
85 | #define MARK_TS_COMMON(C)(((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ) \ |
86 | (MARK_TS_TYPED (C)((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), \ |
87 | tree_contains_struct[C][TS_COMMON] = true) |
88 | |
89 | #define MARK_TS_TYPE_COMMON(C)((((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ), tree_contains_struct[C][TS_TYPE_COMMON] = true) \ |
90 | (MARK_TS_COMMON (C)(((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ), \ |
91 | tree_contains_struct[C][TS_TYPE_COMMON] = true) |
92 | |
93 | #define MARK_TS_TYPE_WITH_LANG_SPECIFIC(C)(((((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ), tree_contains_struct[C][TS_TYPE_COMMON] = true), tree_contains_struct [C][TS_TYPE_WITH_LANG_SPECIFIC] = true) \ |
94 | (MARK_TS_TYPE_COMMON (C)((((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ), tree_contains_struct[C][TS_TYPE_COMMON] = true), \ |
95 | tree_contains_struct[C][TS_TYPE_WITH_LANG_SPECIFIC] = true) |
96 | |
97 | #define MARK_TS_TYPE_NON_COMMON(C)((((((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ), tree_contains_struct[C][TS_TYPE_COMMON] = true), tree_contains_struct [C][TS_TYPE_WITH_LANG_SPECIFIC] = true), tree_contains_struct [C][TS_TYPE_NON_COMMON] = true) \ |
98 | (MARK_TS_TYPE_WITH_LANG_SPECIFIC (C)(((((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ), tree_contains_struct[C][TS_TYPE_COMMON] = true), tree_contains_struct [C][TS_TYPE_WITH_LANG_SPECIFIC] = true), \ |
99 | tree_contains_struct[C][TS_TYPE_NON_COMMON] = true) \ |
100 | |
101 | #define MARK_TS_DECL_MINIMAL(C)((((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ), tree_contains_struct[C][TS_DECL_MINIMAL] = true) \ |
102 | (MARK_TS_COMMON (C)(((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ), \ |
103 | tree_contains_struct[C][TS_DECL_MINIMAL] = true) |
104 | |
105 | #define MARK_TS_DECL_COMMON(C)(((((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ), tree_contains_struct[C][TS_DECL_MINIMAL] = true), tree_contains_struct [C][TS_DECL_COMMON] = true) \ |
106 | (MARK_TS_DECL_MINIMAL (C)((((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ), tree_contains_struct[C][TS_DECL_MINIMAL] = true), \ |
107 | tree_contains_struct[C][TS_DECL_COMMON] = true) |
108 | |
109 | #define MARK_TS_DECL_WRTL(C)((((((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ), tree_contains_struct[C][TS_DECL_MINIMAL] = true), tree_contains_struct [C][TS_DECL_COMMON] = true), tree_contains_struct[C][TS_DECL_WRTL ] = true) \ |
110 | (MARK_TS_DECL_COMMON (C)(((((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ), tree_contains_struct[C][TS_DECL_MINIMAL] = true), tree_contains_struct [C][TS_DECL_COMMON] = true), \ |
111 | tree_contains_struct[C][TS_DECL_WRTL] = true) |
112 | |
113 | #define MARK_TS_DECL_WITH_VIS(C)(((((((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ), tree_contains_struct[C][TS_DECL_MINIMAL] = true), tree_contains_struct [C][TS_DECL_COMMON] = true), tree_contains_struct[C][TS_DECL_WRTL ] = true), tree_contains_struct[C][TS_DECL_WITH_VIS] = true) \ |
114 | (MARK_TS_DECL_WRTL (C)((((((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ), tree_contains_struct[C][TS_DECL_MINIMAL] = true), tree_contains_struct [C][TS_DECL_COMMON] = true), tree_contains_struct[C][TS_DECL_WRTL ] = true), \ |
115 | tree_contains_struct[C][TS_DECL_WITH_VIS] = true) |
116 | |
117 | #define MARK_TS_DECL_NON_COMMON(C)((((((((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ), tree_contains_struct[C][TS_DECL_MINIMAL] = true), tree_contains_struct [C][TS_DECL_COMMON] = true), tree_contains_struct[C][TS_DECL_WRTL ] = true), tree_contains_struct[C][TS_DECL_WITH_VIS] = true), tree_contains_struct[C][TS_DECL_NON_COMMON] = true) \ |
118 | (MARK_TS_DECL_WITH_VIS (C)(((((((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_COMMON] = true ), tree_contains_struct[C][TS_DECL_MINIMAL] = true), tree_contains_struct [C][TS_DECL_COMMON] = true), tree_contains_struct[C][TS_DECL_WRTL ] = true), tree_contains_struct[C][TS_DECL_WITH_VIS] = true), \ |
119 | tree_contains_struct[C][TS_DECL_NON_COMMON] = true) |
120 | |
121 | #define MARK_TS_EXP(C)(((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), tree_contains_struct[C][TS_EXP] = true ) \ |
122 | (MARK_TS_TYPED (C)((tree_contains_struct[C][TS_BASE] = true), tree_contains_struct [C][TS_TYPED] = true), \ |
123 | tree_contains_struct[C][TS_EXP] = true) |
124 | |
125 | /* Returns the string representing CLASS. */ |
126 | |
127 | #define TREE_CODE_CLASS_STRING(CLASS)tree_code_class_strings[(int) (CLASS)]\ |
128 | tree_code_class_strings[(int) (CLASS)] |
129 | |
130 | #define TREE_CODE_CLASS(CODE)tree_code_type[(int) (CODE)] tree_code_type[(int) (CODE)] |
131 | |
132 | /* Nonzero if NODE represents an exceptional code. */ |
133 | |
134 | #define EXCEPTIONAL_CLASS_P(NODE)(tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))] == tcc_exceptional)\ |
135 | (TREE_CODE_CLASS (TREE_CODE (NODE))tree_code_type[(int) (((enum tree_code) (NODE)->base.code) )] == tcc_exceptional) |
136 | |
137 | /* Nonzero if NODE represents a constant. */ |
138 | |
139 | #define CONSTANT_CLASS_P(NODE)(tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))] == tcc_constant)\ |
140 | (TREE_CODE_CLASS (TREE_CODE (NODE))tree_code_type[(int) (((enum tree_code) (NODE)->base.code) )] == tcc_constant) |
141 | |
142 | /* Nonzero if NODE represents a constant, or is a location wrapper |
143 | around such a node. */ |
144 | |
145 | #define CONSTANT_CLASS_OR_WRAPPER_P(NODE)((tree_code_type[(int) (((enum tree_code) (tree_strip_any_location_wrapper (NODE))->base.code))] == tcc_constant))\ |
146 | (CONSTANT_CLASS_P (tree_strip_any_location_wrapper (NODE))(tree_code_type[(int) (((enum tree_code) (tree_strip_any_location_wrapper (NODE))->base.code))] == tcc_constant)) |
147 | |
148 | /* Nonzero if NODE represents a type. */ |
149 | |
150 | #define TYPE_P(NODE)(tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))] == tcc_type)\ |
151 | (TREE_CODE_CLASS (TREE_CODE (NODE))tree_code_type[(int) (((enum tree_code) (NODE)->base.code) )] == tcc_type) |
152 | |
153 | /* Nonzero if NODE represents a declaration. */ |
154 | |
155 | #define DECL_P(NODE)(tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))] == tcc_declaration)\ |
156 | (TREE_CODE_CLASS (TREE_CODE (NODE))tree_code_type[(int) (((enum tree_code) (NODE)->base.code) )] == tcc_declaration) |
157 | |
158 | /* True if NODE designates a variable declaration. */ |
159 | #define VAR_P(NODE)(((enum tree_code) (NODE)->base.code) == VAR_DECL) \ |
160 | (TREE_CODE (NODE)((enum tree_code) (NODE)->base.code) == VAR_DECL) |
161 | |
162 | /* Nonzero if DECL represents a VAR_DECL or FUNCTION_DECL. */ |
163 | |
164 | #define VAR_OR_FUNCTION_DECL_P(DECL)(((enum tree_code) (DECL)->base.code) == VAR_DECL || ((enum tree_code) (DECL)->base.code) == FUNCTION_DECL)\ |
165 | (TREE_CODE (DECL)((enum tree_code) (DECL)->base.code) == VAR_DECL || TREE_CODE (DECL)((enum tree_code) (DECL)->base.code) == FUNCTION_DECL) |
166 | |
167 | /* Nonzero if NODE represents a INDIRECT_REF. Keep these checks in |
168 | ascending code order. */ |
169 | |
170 | #define INDIRECT_REF_P(NODE)(((enum tree_code) (NODE)->base.code) == INDIRECT_REF)\ |
171 | (TREE_CODE (NODE)((enum tree_code) (NODE)->base.code) == INDIRECT_REF) |
172 | |
173 | /* Nonzero if NODE represents a reference. */ |
174 | |
175 | #define REFERENCE_CLASS_P(NODE)(tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))] == tcc_reference)\ |
176 | (TREE_CODE_CLASS (TREE_CODE (NODE))tree_code_type[(int) (((enum tree_code) (NODE)->base.code) )] == tcc_reference) |
177 | |
178 | /* Nonzero if NODE represents a comparison. */ |
179 | |
180 | #define COMPARISON_CLASS_P(NODE)(tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))] == tcc_comparison)\ |
181 | (TREE_CODE_CLASS (TREE_CODE (NODE))tree_code_type[(int) (((enum tree_code) (NODE)->base.code) )] == tcc_comparison) |
182 | |
183 | /* Nonzero if NODE represents a unary arithmetic expression. */ |
184 | |
185 | #define UNARY_CLASS_P(NODE)(tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))] == tcc_unary)\ |
186 | (TREE_CODE_CLASS (TREE_CODE (NODE))tree_code_type[(int) (((enum tree_code) (NODE)->base.code) )] == tcc_unary) |
187 | |
188 | /* Nonzero if NODE represents a binary arithmetic expression. */ |
189 | |
190 | #define BINARY_CLASS_P(NODE)(tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))] == tcc_binary)\ |
191 | (TREE_CODE_CLASS (TREE_CODE (NODE))tree_code_type[(int) (((enum tree_code) (NODE)->base.code) )] == tcc_binary) |
192 | |
193 | /* Nonzero if NODE represents a statement expression. */ |
194 | |
195 | #define STATEMENT_CLASS_P(NODE)(tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))] == tcc_statement)\ |
196 | (TREE_CODE_CLASS (TREE_CODE (NODE))tree_code_type[(int) (((enum tree_code) (NODE)->base.code) )] == tcc_statement) |
197 | |
198 | /* Nonzero if NODE represents a function call-like expression with a |
199 | variable-length operand vector. */ |
200 | |
201 | #define VL_EXP_CLASS_P(NODE)(tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))] == tcc_vl_exp)\ |
202 | (TREE_CODE_CLASS (TREE_CODE (NODE))tree_code_type[(int) (((enum tree_code) (NODE)->base.code) )] == tcc_vl_exp) |
203 | |
204 | /* Nonzero if NODE represents any other expression. */ |
205 | |
206 | #define EXPRESSION_CLASS_P(NODE)(tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))] == tcc_expression)\ |
207 | (TREE_CODE_CLASS (TREE_CODE (NODE))tree_code_type[(int) (((enum tree_code) (NODE)->base.code) )] == tcc_expression) |
208 | |
209 | /* Returns nonzero iff NODE represents a type or declaration. */ |
210 | |
211 | #define IS_TYPE_OR_DECL_P(NODE)((tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))] == tcc_type) || (tree_code_type[(int) (((enum tree_code) ( NODE)->base.code))] == tcc_declaration))\ |
212 | (TYPE_P (NODE)(tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))] == tcc_type) || DECL_P (NODE)(tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))] == tcc_declaration)) |
213 | |
214 | /* Returns nonzero iff CLASS is the tree-code class of an |
215 | expression. */ |
216 | |
217 | #define IS_EXPR_CODE_CLASS(CLASS)((CLASS) >= tcc_reference && (CLASS) <= tcc_expression )\ |
218 | ((CLASS) >= tcc_reference && (CLASS) <= tcc_expression) |
219 | |
220 | /* Returns nonzero iff NODE is an expression of some kind. */ |
221 | |
222 | #define EXPR_P(NODE)((tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))]) >= tcc_reference && (tree_code_type[(int) ((( enum tree_code) (NODE)->base.code))]) <= tcc_expression ) IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (NODE)))((tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))]) >= tcc_reference && (tree_code_type[(int) ((( enum tree_code) (NODE)->base.code))]) <= tcc_expression ) |
223 | |
224 | #define TREE_CODE_LENGTH(CODE)tree_code_length[(int) (CODE)] tree_code_length[(int) (CODE)] |
225 | |
226 | |
227 | /* Helper macros for math builtins. */ |
228 | |
229 | #define CASE_FLT_FN(FN)case FN: case FNF: case FNL case FN: case FN##F: case FN##L |
230 | #define CASE_FLT_FN_FLOATN_NX(FN)case FNF16: case FNF32: case FNF64: case FNF128: case FNF32X: case FNF64X: case FNF128X \ |
231 | case FN##F16: case FN##F32: case FN##F64: case FN##F128: \ |
232 | case FN##F32X: case FN##F64X: case FN##F128X |
233 | #define CASE_FLT_FN_REENT(FN)case FN_R: case FNF_R: case FNL_R case FN##_R: case FN##F_R: case FN##L_R |
234 | #define CASE_INT_FN(FN)case FN: case FNL: case FNLL: case FNIMAX case FN: case FN##L: case FN##LL: case FN##IMAX |
235 | |
236 | #define NULL_TREE(tree) nullptr (tree) NULLnullptr |
237 | |
238 | /* Define accessors for the fields that all tree nodes have |
239 | (though some fields are not used for all kinds of nodes). */ |
240 | |
241 | /* The tree-code says what kind of node it is. |
242 | Codes are defined in tree.def. */ |
243 | #define TREE_CODE(NODE)((enum tree_code) (NODE)->base.code) ((enum tree_code) (NODE)->base.code) |
244 | #define TREE_SET_CODE(NODE, VALUE)((NODE)->base.code = (VALUE)) ((NODE)->base.code = (VALUE)) |
245 | |
246 | /* When checking is enabled, errors will be generated if a tree node |
247 | is accessed incorrectly. The macros die with a fatal error. */ |
248 | #if defined ENABLE_TREE_CHECKING1 && (GCC_VERSION(4 * 1000 + 2) >= 2007) |
249 | |
250 | #define TREE_CHECK(T, CODE)(tree_check ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 250, __FUNCTION__, (CODE))) \ |
251 | (tree_check ((T), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__251, __FUNCTION__, (CODE))) |
252 | |
253 | #define TREE_NOT_CHECK(T, CODE)(tree_not_check ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 253, __FUNCTION__, (CODE))) \ |
254 | (tree_not_check ((T), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__254, __FUNCTION__, (CODE))) |
255 | |
256 | #define TREE_CHECK2(T, CODE1, CODE2)(tree_check2 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 256, __FUNCTION__, (CODE1), (CODE2))) \ |
257 | (tree_check2 ((T), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__257, __FUNCTION__, (CODE1), (CODE2))) |
258 | |
259 | #define TREE_NOT_CHECK2(T, CODE1, CODE2)(tree_not_check2 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 259, __FUNCTION__, (CODE1), (CODE2))) \ |
260 | (tree_not_check2 ((T), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__260, __FUNCTION__, (CODE1), (CODE2))) |
261 | |
262 | #define TREE_CHECK3(T, CODE1, CODE2, CODE3)(tree_check3 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 262, __FUNCTION__, (CODE1), (CODE2), (CODE3))) \ |
263 | (tree_check3 ((T), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__263, __FUNCTION__, (CODE1), (CODE2), (CODE3))) |
264 | |
265 | #define TREE_NOT_CHECK3(T, CODE1, CODE2, CODE3)(tree_not_check3 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 265, __FUNCTION__, (CODE1), (CODE2), (CODE3))) \ |
266 | (tree_not_check3 ((T), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__266, __FUNCTION__, \ |
267 | (CODE1), (CODE2), (CODE3))) |
268 | |
269 | #define TREE_CHECK4(T, CODE1, CODE2, CODE3, CODE4)(tree_check4 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 269, __FUNCTION__, (CODE1), (CODE2), (CODE3), (CODE4))) \ |
270 | (tree_check4 ((T), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__270, __FUNCTION__, \ |
271 | (CODE1), (CODE2), (CODE3), (CODE4))) |
272 | |
273 | #define TREE_NOT_CHECK4(T, CODE1, CODE2, CODE3, CODE4)(tree_not_check4 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 273, __FUNCTION__, (CODE1), (CODE2), (CODE3), (CODE4))) \ |
274 | (tree_not_check4 ((T), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__274, __FUNCTION__, \ |
275 | (CODE1), (CODE2), (CODE3), (CODE4))) |
276 | |
277 | #define TREE_CHECK5(T, CODE1, CODE2, CODE3, CODE4, CODE5)(tree_check5 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 277, __FUNCTION__, (CODE1), (CODE2), (CODE3), (CODE4), (CODE5 ))) \ |
278 | (tree_check5 ((T), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__278, __FUNCTION__, \ |
279 | (CODE1), (CODE2), (CODE3), (CODE4), (CODE5))) |
280 | |
281 | #define TREE_NOT_CHECK5(T, CODE1, CODE2, CODE3, CODE4, CODE5)(tree_not_check5 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 281, __FUNCTION__, (CODE1), (CODE2), (CODE3), (CODE4), (CODE5 ))) \ |
282 | (tree_not_check5 ((T), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__282, __FUNCTION__, \ |
283 | (CODE1), (CODE2), (CODE3), (CODE4), (CODE5))) |
284 | |
285 | #define CONTAINS_STRUCT_CHECK(T, STRUCT)(contains_struct_check ((T), (STRUCT), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 285, __FUNCTION__)) \ |
286 | (contains_struct_check ((T), (STRUCT), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__286, __FUNCTION__)) |
287 | |
288 | #define TREE_CLASS_CHECK(T, CLASS)(tree_class_check ((T), (CLASS), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 288, __FUNCTION__)) \ |
289 | (tree_class_check ((T), (CLASS), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__289, __FUNCTION__)) |
290 | |
291 | #define TREE_RANGE_CHECK(T, CODE1, CODE2)(tree_range_check ((T), (CODE1), (CODE2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 291, __FUNCTION__)) \ |
292 | (tree_range_check ((T), (CODE1), (CODE2), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__292, __FUNCTION__)) |
293 | |
294 | #define OMP_CLAUSE_SUBCODE_CHECK(T, CODE)(omp_clause_subcode_check ((T), (CODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 294, __FUNCTION__)) \ |
295 | (omp_clause_subcode_check ((T), (CODE), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__295, __FUNCTION__)) |
296 | |
297 | #define OMP_CLAUSE_RANGE_CHECK(T, CODE1, CODE2)(omp_clause_range_check ((T), (CODE1), (CODE2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 297, __FUNCTION__)) \ |
298 | (omp_clause_range_check ((T), (CODE1), (CODE2), \ |
299 | __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__299, __FUNCTION__)) |
300 | |
301 | /* These checks have to be special cased. */ |
302 | #define EXPR_CHECK(T)(expr_check ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 302, __FUNCTION__)) \ |
303 | (expr_check ((T), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__303, __FUNCTION__)) |
304 | |
305 | /* These checks have to be special cased. */ |
306 | #define NON_TYPE_CHECK(T)(non_type_check ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 306, __FUNCTION__)) \ |
307 | (non_type_check ((T), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__307, __FUNCTION__)) |
308 | |
309 | /* These checks have to be special cased. */ |
310 | #define ANY_INTEGRAL_TYPE_CHECK(T)(any_integral_type_check ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 310, __FUNCTION__)) \ |
311 | (any_integral_type_check ((T), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__311, __FUNCTION__)) |
312 | |
313 | #define TREE_INT_CST_ELT_CHECK(T, I)(*tree_int_cst_elt_check ((T), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 313, __FUNCTION__)) \ |
314 | (*tree_int_cst_elt_check ((T), (I), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__314, __FUNCTION__)) |
315 | |
316 | #define TREE_VEC_ELT_CHECK(T, I)(*((const_cast<tree *> (tree_vec_elt_check ((T), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 316, __FUNCTION__))))) \ |
317 | (*(CONST_CAST2 (tree *, typeof (T)*, \(const_cast<tree *> (tree_vec_elt_check ((T), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 318, __FUNCTION__))) |
318 | tree_vec_elt_check ((T), (I), __FILE__, __LINE__, __FUNCTION__))(const_cast<tree *> (tree_vec_elt_check ((T), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 318, __FUNCTION__))))) |
319 | |
320 | #define OMP_CLAUSE_ELT_CHECK(T, I)(*(omp_clause_elt_check ((T), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 320, __FUNCTION__))) \ |
321 | (*(omp_clause_elt_check ((T), (I), __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__321, __FUNCTION__))) |
322 | |
323 | /* Special checks for TREE_OPERANDs. */ |
324 | #define TREE_OPERAND_CHECK(T, I)(*((const_cast<tree*> (tree_operand_check ((T), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 324, __FUNCTION__))))) \ |
325 | (*(CONST_CAST2 (tree*, typeof (T)*, \(const_cast<tree*> (tree_operand_check ((T), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 326, __FUNCTION__))) |
326 | tree_operand_check ((T), (I), __FILE__, __LINE__, __FUNCTION__))(const_cast<tree*> (tree_operand_check ((T), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 326, __FUNCTION__))))) |
327 | |
328 | #define TREE_OPERAND_CHECK_CODE(T, CODE, I)(*(tree_operand_check_code ((T), (CODE), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 328, __FUNCTION__))) \ |
329 | (*(tree_operand_check_code ((T), (CODE), (I), \ |
330 | __FILE__"/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h", __LINE__330, __FUNCTION__))) |
331 | |
332 | /* Nodes are chained together for many purposes. |
333 | Types are chained together to record them for being output to the debugger |
334 | (see the function `chain_type'). |
335 | Decls in the same scope are chained together to record the contents |
336 | of the scope. |
337 | Statement nodes for successive statements used to be chained together. |
338 | Often lists of things are represented by TREE_LIST nodes that |
339 | are chained together. */ |
340 | |
341 | #define TREE_CHAIN(NODE)((contains_struct_check ((NODE), (TS_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 341, __FUNCTION__))->common.chain) \ |
342 | (CONTAINS_STRUCT_CHECK (NODE, TS_COMMON)(contains_struct_check ((NODE), (TS_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 342, __FUNCTION__))->common.chain) |
343 | |
344 | /* In all nodes that are expressions, this is the data type of the expression. |
345 | In POINTER_TYPE nodes, this is the type that the pointer points to. |
346 | In ARRAY_TYPE nodes, this is the type of the elements. |
347 | In VECTOR_TYPE nodes, this is the type of the elements. */ |
348 | #define TREE_TYPE(NODE)((contains_struct_check ((NODE), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 348, __FUNCTION__))->typed.type) \ |
349 | (CONTAINS_STRUCT_CHECK (NODE, TS_TYPED)(contains_struct_check ((NODE), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 349, __FUNCTION__))->typed.type) |
350 | |
351 | extern void tree_contains_struct_check_failed (const_tree, |
352 | const enum tree_node_structure_enum, |
353 | const char *, int, const char *) |
354 | ATTRIBUTE_NORETURN__attribute__ ((__noreturn__)) ATTRIBUTE_COLD; |
355 | |
356 | extern void tree_check_failed (const_tree, const char *, int, const char *, |
357 | ...) ATTRIBUTE_NORETURN__attribute__ ((__noreturn__)) ATTRIBUTE_COLD; |
358 | extern void tree_not_check_failed (const_tree, const char *, int, const char *, |
359 | ...) ATTRIBUTE_NORETURN__attribute__ ((__noreturn__)) ATTRIBUTE_COLD; |
360 | extern void tree_class_check_failed (const_tree, const enum tree_code_class, |
361 | const char *, int, const char *) |
362 | ATTRIBUTE_NORETURN__attribute__ ((__noreturn__)) ATTRIBUTE_COLD; |
363 | extern void tree_range_check_failed (const_tree, const char *, int, |
364 | const char *, enum tree_code, |
365 | enum tree_code) |
366 | ATTRIBUTE_NORETURN__attribute__ ((__noreturn__)) ATTRIBUTE_COLD; |
367 | extern void tree_not_class_check_failed (const_tree, |
368 | const enum tree_code_class, |
369 | const char *, int, const char *) |
370 | ATTRIBUTE_NORETURN__attribute__ ((__noreturn__)) ATTRIBUTE_COLD; |
371 | extern void tree_int_cst_elt_check_failed (int, int, const char *, |
372 | int, const char *) |
373 | ATTRIBUTE_NORETURN__attribute__ ((__noreturn__)) ATTRIBUTE_COLD; |
374 | extern void tree_vec_elt_check_failed (int, int, const char *, |
375 | int, const char *) |
376 | ATTRIBUTE_NORETURN__attribute__ ((__noreturn__)) ATTRIBUTE_COLD; |
377 | extern void phi_node_elt_check_failed (int, int, const char *, |
378 | int, const char *) |
379 | ATTRIBUTE_NORETURN__attribute__ ((__noreturn__)) ATTRIBUTE_COLD; |
380 | extern void tree_operand_check_failed (int, const_tree, |
381 | const char *, int, const char *) |
382 | ATTRIBUTE_NORETURN__attribute__ ((__noreturn__)) ATTRIBUTE_COLD; |
383 | extern void omp_clause_check_failed (const_tree, const char *, int, |
384 | const char *, enum omp_clause_code) |
385 | ATTRIBUTE_NORETURN__attribute__ ((__noreturn__)) ATTRIBUTE_COLD; |
386 | extern void omp_clause_operand_check_failed (int, const_tree, const char *, |
387 | int, const char *) |
388 | ATTRIBUTE_NORETURN__attribute__ ((__noreturn__)) ATTRIBUTE_COLD; |
389 | extern void omp_clause_range_check_failed (const_tree, const char *, int, |
390 | const char *, enum omp_clause_code, |
391 | enum omp_clause_code) |
392 | ATTRIBUTE_NORETURN__attribute__ ((__noreturn__)) ATTRIBUTE_COLD; |
393 | |
394 | #else /* not ENABLE_TREE_CHECKING, or not gcc */ |
395 | |
396 | #define CONTAINS_STRUCT_CHECK(T, ENUM)(contains_struct_check ((T), (ENUM), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 396, __FUNCTION__)) (T) |
397 | #define TREE_CHECK(T, CODE)(tree_check ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 397, __FUNCTION__, (CODE))) (T) |
398 | #define TREE_NOT_CHECK(T, CODE)(tree_not_check ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 398, __FUNCTION__, (CODE))) (T) |
399 | #define TREE_CHECK2(T, CODE1, CODE2)(tree_check2 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 399, __FUNCTION__, (CODE1), (CODE2))) (T) |
400 | #define TREE_NOT_CHECK2(T, CODE1, CODE2)(tree_not_check2 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 400, __FUNCTION__, (CODE1), (CODE2))) (T) |
401 | #define TREE_CHECK3(T, CODE1, CODE2, CODE3)(tree_check3 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 401, __FUNCTION__, (CODE1), (CODE2), (CODE3))) (T) |
402 | #define TREE_NOT_CHECK3(T, CODE1, CODE2, CODE3)(tree_not_check3 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 402, __FUNCTION__, (CODE1), (CODE2), (CODE3))) (T) |
403 | #define TREE_CHECK4(T, CODE1, CODE2, CODE3, CODE4)(tree_check4 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 403, __FUNCTION__, (CODE1), (CODE2), (CODE3), (CODE4))) (T) |
404 | #define TREE_NOT_CHECK4(T, CODE1, CODE2, CODE3, CODE4)(tree_not_check4 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 404, __FUNCTION__, (CODE1), (CODE2), (CODE3), (CODE4))) (T) |
405 | #define TREE_CHECK5(T, CODE1, CODE2, CODE3, CODE4, CODE5)(tree_check5 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 405, __FUNCTION__, (CODE1), (CODE2), (CODE3), (CODE4), (CODE5 ))) (T) |
406 | #define TREE_NOT_CHECK5(T, CODE1, CODE2, CODE3, CODE4, CODE5)(tree_not_check5 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 406, __FUNCTION__, (CODE1), (CODE2), (CODE3), (CODE4), (CODE5 ))) (T) |
407 | #define TREE_CLASS_CHECK(T, CODE)(tree_class_check ((T), (CODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 407, __FUNCTION__)) (T) |
408 | #define TREE_RANGE_CHECK(T, CODE1, CODE2)(tree_range_check ((T), (CODE1), (CODE2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 408, __FUNCTION__)) (T) |
409 | #define EXPR_CHECK(T)(expr_check ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 409, __FUNCTION__)) (T) |
410 | #define NON_TYPE_CHECK(T)(non_type_check ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 410, __FUNCTION__)) (T) |
411 | #define TREE_INT_CST_ELT_CHECK(T, I)(*tree_int_cst_elt_check ((T), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 411, __FUNCTION__)) ((T)->int_cst.val[I]) |
412 | #define TREE_VEC_ELT_CHECK(T, I)(*((const_cast<tree *> (tree_vec_elt_check ((T), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 412, __FUNCTION__))))) ((T)->vec.a[I]) |
413 | #define TREE_OPERAND_CHECK(T, I)(*((const_cast<tree*> (tree_operand_check ((T), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 413, __FUNCTION__))))) ((T)->exp.operands[I]) |
414 | #define TREE_OPERAND_CHECK_CODE(T, CODE, I)(*(tree_operand_check_code ((T), (CODE), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 414, __FUNCTION__))) ((T)->exp.operands[I]) |
415 | #define OMP_CLAUSE_ELT_CHECK(T, i)(*(omp_clause_elt_check ((T), (i), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 415, __FUNCTION__))) ((T)->omp_clause.ops[i]) |
416 | #define OMP_CLAUSE_RANGE_CHECK(T, CODE1, CODE2)(omp_clause_range_check ((T), (CODE1), (CODE2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 416, __FUNCTION__)) (T) |
417 | #define OMP_CLAUSE_SUBCODE_CHECK(T, CODE)(omp_clause_subcode_check ((T), (CODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 417, __FUNCTION__)) (T) |
418 | #define ANY_INTEGRAL_TYPE_CHECK(T)(any_integral_type_check ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 418, __FUNCTION__)) (T) |
419 | |
420 | #define TREE_CHAIN(NODE)((contains_struct_check ((NODE), (TS_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 420, __FUNCTION__))->common.chain) ((NODE)->common.chain) |
421 | #define TREE_TYPE(NODE)((contains_struct_check ((NODE), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 421, __FUNCTION__))->typed.type) ((NODE)->typed.type) |
422 | |
423 | #endif |
424 | |
425 | #define TREE_BLOCK(NODE)(tree_block (NODE)) (tree_block (NODE)) |
426 | #define TREE_SET_BLOCK(T, B)(tree_set_block ((T), (B))) (tree_set_block ((T), (B))) |
427 | |
428 | #include "tree-check.h" |
429 | |
430 | #define TYPE_CHECK(T)(tree_class_check ((T), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 430, __FUNCTION__)) TREE_CLASS_CHECK (T, tcc_type)(tree_class_check ((T), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 430, __FUNCTION__)) |
431 | #define DECL_MINIMAL_CHECK(T)(contains_struct_check ((T), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 431, __FUNCTION__)) CONTAINS_STRUCT_CHECK (T, TS_DECL_MINIMAL)(contains_struct_check ((T), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 431, __FUNCTION__)) |
432 | #define DECL_COMMON_CHECK(T)(contains_struct_check ((T), (TS_DECL_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 432, __FUNCTION__)) CONTAINS_STRUCT_CHECK (T, TS_DECL_COMMON)(contains_struct_check ((T), (TS_DECL_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 432, __FUNCTION__)) |
433 | #define DECL_WRTL_CHECK(T)(contains_struct_check ((T), (TS_DECL_WRTL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 433, __FUNCTION__)) CONTAINS_STRUCT_CHECK (T, TS_DECL_WRTL)(contains_struct_check ((T), (TS_DECL_WRTL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 433, __FUNCTION__)) |
434 | #define DECL_WITH_VIS_CHECK(T)(contains_struct_check ((T), (TS_DECL_WITH_VIS), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 434, __FUNCTION__)) CONTAINS_STRUCT_CHECK (T, TS_DECL_WITH_VIS)(contains_struct_check ((T), (TS_DECL_WITH_VIS), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 434, __FUNCTION__)) |
435 | #define DECL_NON_COMMON_CHECK(T)(contains_struct_check ((T), (TS_DECL_NON_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 435, __FUNCTION__)) CONTAINS_STRUCT_CHECK (T, TS_DECL_NON_COMMON)(contains_struct_check ((T), (TS_DECL_NON_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 435, __FUNCTION__)) |
436 | #define CST_CHECK(T)(tree_class_check ((T), (tcc_constant), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 436, __FUNCTION__)) TREE_CLASS_CHECK (T, tcc_constant)(tree_class_check ((T), (tcc_constant), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 436, __FUNCTION__)) |
437 | #define STMT_CHECK(T)(tree_class_check ((T), (tcc_statement), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 437, __FUNCTION__)) TREE_CLASS_CHECK (T, tcc_statement)(tree_class_check ((T), (tcc_statement), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 437, __FUNCTION__)) |
438 | #define VL_EXP_CHECK(T)(tree_class_check ((T), (tcc_vl_exp), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 438, __FUNCTION__)) TREE_CLASS_CHECK (T, tcc_vl_exp)(tree_class_check ((T), (tcc_vl_exp), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 438, __FUNCTION__)) |
439 | #define FUNC_OR_METHOD_CHECK(T)(tree_check2 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 439, __FUNCTION__, (FUNCTION_TYPE), (METHOD_TYPE))) TREE_CHECK2 (T, FUNCTION_TYPE, METHOD_TYPE)(tree_check2 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 439, __FUNCTION__, (FUNCTION_TYPE), (METHOD_TYPE))) |
440 | #define PTR_OR_REF_CHECK(T)(tree_check2 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 440, __FUNCTION__, (POINTER_TYPE), (REFERENCE_TYPE))) TREE_CHECK2 (T, POINTER_TYPE, REFERENCE_TYPE)(tree_check2 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 440, __FUNCTION__, (POINTER_TYPE), (REFERENCE_TYPE))) |
441 | |
442 | #define RECORD_OR_UNION_CHECK(T)(tree_check3 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 442, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE ))) \ |
443 | TREE_CHECK3 (T, RECORD_TYPE, UNION_TYPE, QUAL_UNION_TYPE)(tree_check3 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 443, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE ))) |
444 | #define NOT_RECORD_OR_UNION_CHECK(T)(tree_not_check3 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 444, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE ))) \ |
445 | TREE_NOT_CHECK3 (T, RECORD_TYPE, UNION_TYPE, QUAL_UNION_TYPE)(tree_not_check3 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 445, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE ))) |
446 | #define ARRAY_OR_INTEGER_TYPE_CHECK(T)(tree_check2 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 446, __FUNCTION__, (ARRAY_TYPE), (INTEGER_TYPE))) \ |
447 | TREE_CHECK2 (T, ARRAY_TYPE, INTEGER_TYPE)(tree_check2 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 447, __FUNCTION__, (ARRAY_TYPE), (INTEGER_TYPE))) |
448 | |
449 | #define NUMERICAL_TYPE_CHECK(T)(tree_check5 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 449, __FUNCTION__, (INTEGER_TYPE), (ENUMERAL_TYPE), (BOOLEAN_TYPE ), (REAL_TYPE), (FIXED_POINT_TYPE))) \ |
450 | TREE_CHECK5 (T, INTEGER_TYPE, ENUMERAL_TYPE, BOOLEAN_TYPE, REAL_TYPE, \(tree_check5 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 451, __FUNCTION__, (INTEGER_TYPE), (ENUMERAL_TYPE), (BOOLEAN_TYPE ), (REAL_TYPE), (FIXED_POINT_TYPE))) |
451 | FIXED_POINT_TYPE)(tree_check5 ((T), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 451, __FUNCTION__, (INTEGER_TYPE), (ENUMERAL_TYPE), (BOOLEAN_TYPE ), (REAL_TYPE), (FIXED_POINT_TYPE))) |
452 | |
453 | /* Here is how primitive or already-canonicalized types' hash codes |
454 | are made. */ |
455 | #define TYPE_HASH(TYPE)(((tree_class_check ((TYPE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 455, __FUNCTION__))->type_common.uid)) (TYPE_UID (TYPE)((tree_class_check ((TYPE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 455, __FUNCTION__))->type_common.uid)) |
456 | |
457 | /* A simple hash function for an arbitrary tree node. This must not be |
458 | used in hash tables which are saved to a PCH. */ |
459 | #define TREE_HASH(NODE)((size_t) (NODE) & 0777777) ((size_t) (NODE) & 0777777) |
460 | |
461 | /* Tests if CODE is a conversion expr (NOP_EXPR or CONVERT_EXPR). */ |
462 | #define CONVERT_EXPR_CODE_P(CODE)((CODE) == NOP_EXPR || (CODE) == CONVERT_EXPR) \ |
463 | ((CODE) == NOP_EXPR || (CODE) == CONVERT_EXPR) |
464 | |
465 | /* Similarly, but accept an expression instead of a tree code. */ |
466 | #define CONVERT_EXPR_P(EXP)((((enum tree_code) (EXP)->base.code)) == NOP_EXPR || (((enum tree_code) (EXP)->base.code)) == CONVERT_EXPR) CONVERT_EXPR_CODE_P (TREE_CODE (EXP))((((enum tree_code) (EXP)->base.code)) == NOP_EXPR || (((enum tree_code) (EXP)->base.code)) == CONVERT_EXPR) |
467 | |
468 | /* Generate case for NOP_EXPR, CONVERT_EXPR. */ |
469 | |
470 | #define CASE_CONVERTcase NOP_EXPR: case CONVERT_EXPR \ |
471 | case NOP_EXPR: \ |
472 | case CONVERT_EXPR |
473 | |
474 | /* Given an expression as a tree, strip any conversion that generates |
475 | no instruction. Accepts both tree and const_tree arguments since |
476 | we are not modifying the tree itself. */ |
477 | |
478 | #define STRIP_NOPS(EXP)(EXP) = tree_strip_nop_conversions ((const_cast<union tree_node *> (((EXP))))) \ |
479 | (EXP) = tree_strip_nop_conversions (CONST_CAST_TREE (EXP)(const_cast<union tree_node *> (((EXP))))) |
480 | |
481 | /* Like STRIP_NOPS, but don't let the signedness change either. */ |
482 | |
483 | #define STRIP_SIGN_NOPS(EXP)(EXP) = tree_strip_sign_nop_conversions ((const_cast<union tree_node *> (((EXP))))) \ |
484 | (EXP) = tree_strip_sign_nop_conversions (CONST_CAST_TREE (EXP)(const_cast<union tree_node *> (((EXP))))) |
485 | |
486 | /* Like STRIP_NOPS, but don't alter the TREE_TYPE either. */ |
487 | |
488 | #define STRIP_TYPE_NOPS(EXP)while ((((((enum tree_code) (EXP)->base.code)) == NOP_EXPR || (((enum tree_code) (EXP)->base.code)) == CONVERT_EXPR) || ((enum tree_code) (EXP)->base.code) == NON_LVALUE_EXPR ) && (*((const_cast<tree*> (tree_operand_check ( (EXP), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 488, __FUNCTION__))))) != global_trees[TI_ERROR_MARK] && (((contains_struct_check ((EXP), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 488, __FUNCTION__))->typed.type) == ((contains_struct_check (((*((const_cast<tree*> (tree_operand_check ((EXP), (0 ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 488, __FUNCTION__)))))), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 488, __FUNCTION__))->typed.type))) (EXP) = (*((const_cast <tree*> (tree_operand_check ((EXP), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 488, __FUNCTION__))))) \ |
489 | while ((CONVERT_EXPR_P (EXP)((((enum tree_code) (EXP)->base.code)) == NOP_EXPR || (((enum tree_code) (EXP)->base.code)) == CONVERT_EXPR) \ |
490 | || TREE_CODE (EXP)((enum tree_code) (EXP)->base.code) == NON_LVALUE_EXPR) \ |
491 | && TREE_OPERAND (EXP, 0)(*((const_cast<tree*> (tree_operand_check ((EXP), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 491, __FUNCTION__))))) != error_mark_nodeglobal_trees[TI_ERROR_MARK] \ |
492 | && (TREE_TYPE (EXP)((contains_struct_check ((EXP), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 492, __FUNCTION__))->typed.type) \ |
493 | == TREE_TYPE (TREE_OPERAND (EXP, 0))((contains_struct_check (((*((const_cast<tree*> (tree_operand_check ((EXP), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 493, __FUNCTION__)))))), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 493, __FUNCTION__))->typed.type))) \ |
494 | (EXP) = TREE_OPERAND (EXP, 0)(*((const_cast<tree*> (tree_operand_check ((EXP), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 494, __FUNCTION__))))) |
495 | |
496 | /* Remove unnecessary type conversions according to |
497 | tree_ssa_useless_type_conversion. */ |
498 | |
499 | #define STRIP_USELESS_TYPE_CONVERSION(EXP)(EXP) = tree_ssa_strip_useless_type_conversions (EXP) \ |
500 | (EXP) = tree_ssa_strip_useless_type_conversions (EXP) |
501 | |
502 | /* Remove any VIEW_CONVERT_EXPR or NON_LVALUE_EXPR that's purely |
503 | in use to provide a location_t. */ |
504 | |
505 | #define STRIP_ANY_LOCATION_WRAPPER(EXP)(EXP) = tree_strip_any_location_wrapper ((const_cast<union tree_node *> (((EXP))))) \ |
506 | (EXP) = tree_strip_any_location_wrapper (CONST_CAST_TREE (EXP)(const_cast<union tree_node *> (((EXP))))) |
507 | |
508 | /* Nonzero if TYPE represents a vector type. */ |
509 | |
510 | #define VECTOR_TYPE_P(TYPE)(((enum tree_code) (TYPE)->base.code) == VECTOR_TYPE) (TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == VECTOR_TYPE) |
511 | |
512 | /* Nonzero if TYPE represents a vector of booleans. */ |
513 | |
514 | #define VECTOR_BOOLEAN_TYPE_P(TYPE)(((enum tree_code) (TYPE)->base.code) == VECTOR_TYPE && ((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 514, __FUNCTION__))->typed.type))->base.code) == BOOLEAN_TYPE ) \ |
515 | (TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == VECTOR_TYPE \ |
516 | && TREE_CODE (TREE_TYPE (TYPE))((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 516, __FUNCTION__))->typed.type))->base.code) == BOOLEAN_TYPE) |
517 | |
518 | /* Nonzero if TYPE represents an integral type. Note that we do not |
519 | include COMPLEX types here. Keep these checks in ascending code |
520 | order. */ |
521 | |
522 | #define INTEGRAL_TYPE_P(TYPE)(((enum tree_code) (TYPE)->base.code) == ENUMERAL_TYPE || ( (enum tree_code) (TYPE)->base.code) == BOOLEAN_TYPE || ((enum tree_code) (TYPE)->base.code) == INTEGER_TYPE) \ |
523 | (TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == ENUMERAL_TYPE \ |
524 | || TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == BOOLEAN_TYPE \ |
525 | || TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == INTEGER_TYPE) |
526 | |
527 | /* Nonzero if TYPE represents an integral type, including complex |
528 | and vector integer types. */ |
529 | |
530 | #define ANY_INTEGRAL_TYPE_P(TYPE)((((enum tree_code) (TYPE)->base.code) == ENUMERAL_TYPE || ((enum tree_code) (TYPE)->base.code) == BOOLEAN_TYPE || ( (enum tree_code) (TYPE)->base.code) == INTEGER_TYPE) || (( ((enum tree_code) (TYPE)->base.code) == COMPLEX_TYPE || (( (enum tree_code) (TYPE)->base.code) == VECTOR_TYPE)) && (((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 530, __FUNCTION__))->typed.type))->base.code) == ENUMERAL_TYPE || ((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 530, __FUNCTION__))->typed.type))->base.code) == BOOLEAN_TYPE || ((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 530, __FUNCTION__))->typed.type))->base.code) == INTEGER_TYPE ))) \ |
531 | (INTEGRAL_TYPE_P (TYPE)(((enum tree_code) (TYPE)->base.code) == ENUMERAL_TYPE || ( (enum tree_code) (TYPE)->base.code) == BOOLEAN_TYPE || ((enum tree_code) (TYPE)->base.code) == INTEGER_TYPE) \ |
532 | || ((TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == COMPLEX_TYPE \ |
533 | || VECTOR_TYPE_P (TYPE)(((enum tree_code) (TYPE)->base.code) == VECTOR_TYPE)) \ |
534 | && INTEGRAL_TYPE_P (TREE_TYPE (TYPE))(((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 534, __FUNCTION__))->typed.type))->base.code) == ENUMERAL_TYPE || ((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 534, __FUNCTION__))->typed.type))->base.code) == BOOLEAN_TYPE || ((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 534, __FUNCTION__))->typed.type))->base.code) == INTEGER_TYPE ))) |
535 | |
536 | /* Nonzero if TYPE represents a non-saturating fixed-point type. */ |
537 | |
538 | #define NON_SAT_FIXED_POINT_TYPE_P(TYPE)(((enum tree_code) (TYPE)->base.code) == FIXED_POINT_TYPE && !((tree_not_check4 ((TYPE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 538, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE ), (ARRAY_TYPE)))->base.u.bits.saturating_flag)) \ |
539 | (TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == FIXED_POINT_TYPE && !TYPE_SATURATING (TYPE)((tree_not_check4 ((TYPE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 539, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE ), (ARRAY_TYPE)))->base.u.bits.saturating_flag)) |
540 | |
541 | /* Nonzero if TYPE represents a saturating fixed-point type. */ |
542 | |
543 | #define SAT_FIXED_POINT_TYPE_P(TYPE)(((enum tree_code) (TYPE)->base.code) == FIXED_POINT_TYPE && ((tree_not_check4 ((TYPE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 543, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE ), (ARRAY_TYPE)))->base.u.bits.saturating_flag)) \ |
544 | (TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == FIXED_POINT_TYPE && TYPE_SATURATING (TYPE)((tree_not_check4 ((TYPE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 544, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE ), (ARRAY_TYPE)))->base.u.bits.saturating_flag)) |
545 | |
546 | /* Nonzero if TYPE represents a fixed-point type. */ |
547 | |
548 | #define FIXED_POINT_TYPE_P(TYPE)(((enum tree_code) (TYPE)->base.code) == FIXED_POINT_TYPE) (TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == FIXED_POINT_TYPE) |
549 | |
550 | /* Nonzero if TYPE represents a scalar floating-point type. */ |
551 | |
552 | #define SCALAR_FLOAT_TYPE_P(TYPE)(((enum tree_code) (TYPE)->base.code) == REAL_TYPE) (TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == REAL_TYPE) |
553 | |
554 | /* Nonzero if TYPE represents a complex floating-point type. */ |
555 | |
556 | #define COMPLEX_FLOAT_TYPE_P(TYPE)(((enum tree_code) (TYPE)->base.code) == COMPLEX_TYPE && ((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 556, __FUNCTION__))->typed.type))->base.code) == REAL_TYPE ) \ |
557 | (TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == COMPLEX_TYPE \ |
558 | && TREE_CODE (TREE_TYPE (TYPE))((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 558, __FUNCTION__))->typed.type))->base.code) == REAL_TYPE) |
559 | |
560 | /* Nonzero if TYPE represents a vector integer type. */ |
561 | |
562 | #define VECTOR_INTEGER_TYPE_P(TYPE)((((enum tree_code) (TYPE)->base.code) == VECTOR_TYPE) && ((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 562, __FUNCTION__))->typed.type))->base.code) == INTEGER_TYPE ) \ |
563 | (VECTOR_TYPE_P (TYPE)(((enum tree_code) (TYPE)->base.code) == VECTOR_TYPE) \ |
564 | && TREE_CODE (TREE_TYPE (TYPE))((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 564, __FUNCTION__))->typed.type))->base.code) == INTEGER_TYPE) |
565 | |
566 | |
567 | /* Nonzero if TYPE represents a vector floating-point type. */ |
568 | |
569 | #define VECTOR_FLOAT_TYPE_P(TYPE)((((enum tree_code) (TYPE)->base.code) == VECTOR_TYPE) && ((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 569, __FUNCTION__))->typed.type))->base.code) == REAL_TYPE ) \ |
570 | (VECTOR_TYPE_P (TYPE)(((enum tree_code) (TYPE)->base.code) == VECTOR_TYPE) \ |
571 | && TREE_CODE (TREE_TYPE (TYPE))((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 571, __FUNCTION__))->typed.type))->base.code) == REAL_TYPE) |
572 | |
573 | /* Nonzero if TYPE represents a floating-point type, including complex |
574 | and vector floating-point types. The vector and complex check does |
575 | not use the previous two macros to enable early folding. */ |
576 | |
577 | #define FLOAT_TYPE_P(TYPE)((((enum tree_code) (TYPE)->base.code) == REAL_TYPE) || (( ((enum tree_code) (TYPE)->base.code) == COMPLEX_TYPE || (( (enum tree_code) (TYPE)->base.code) == VECTOR_TYPE)) && (((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 577, __FUNCTION__))->typed.type))->base.code) == REAL_TYPE ))) \ |
578 | (SCALAR_FLOAT_TYPE_P (TYPE)(((enum tree_code) (TYPE)->base.code) == REAL_TYPE) \ |
579 | || ((TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == COMPLEX_TYPE \ |
580 | || VECTOR_TYPE_P (TYPE)(((enum tree_code) (TYPE)->base.code) == VECTOR_TYPE)) \ |
581 | && SCALAR_FLOAT_TYPE_P (TREE_TYPE (TYPE))(((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 581, __FUNCTION__))->typed.type))->base.code) == REAL_TYPE ))) |
582 | |
583 | /* Nonzero if TYPE represents a decimal floating-point type. */ |
584 | #define DECIMAL_FLOAT_TYPE_P(TYPE)((((enum tree_code) (TYPE)->base.code) == REAL_TYPE) && (((enum mode_class) mode_class[((((enum tree_code) ((tree_class_check ((TYPE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 584, __FUNCTION__)))->base.code) == VECTOR_TYPE) ? vector_type_mode (TYPE) : (TYPE)->type_common.mode)]) == MODE_DECIMAL_FLOAT )) \ |
585 | (SCALAR_FLOAT_TYPE_P (TYPE)(((enum tree_code) (TYPE)->base.code) == REAL_TYPE) \ |
586 | && DECIMAL_FLOAT_MODE_P (TYPE_MODE (TYPE))(((enum mode_class) mode_class[((((enum tree_code) ((tree_class_check ((TYPE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 586, __FUNCTION__)))->base.code) == VECTOR_TYPE) ? vector_type_mode (TYPE) : (TYPE)->type_common.mode)]) == MODE_DECIMAL_FLOAT )) |
587 | |
588 | /* Nonzero if TYPE is a record or union type. */ |
589 | #define RECORD_OR_UNION_TYPE_P(TYPE)(((enum tree_code) (TYPE)->base.code) == RECORD_TYPE || (( enum tree_code) (TYPE)->base.code) == UNION_TYPE || ((enum tree_code) (TYPE)->base.code) == QUAL_UNION_TYPE) \ |
590 | (TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == RECORD_TYPE \ |
591 | || TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == UNION_TYPE \ |
592 | || TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == QUAL_UNION_TYPE) |
593 | |
594 | /* Nonzero if TYPE represents an aggregate (multi-component) type. |
595 | Keep these checks in ascending code order. */ |
596 | |
597 | #define AGGREGATE_TYPE_P(TYPE)(((enum tree_code) (TYPE)->base.code) == ARRAY_TYPE || ((( enum tree_code) (TYPE)->base.code) == RECORD_TYPE || ((enum tree_code) (TYPE)->base.code) == UNION_TYPE || ((enum tree_code ) (TYPE)->base.code) == QUAL_UNION_TYPE)) \ |
598 | (TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == ARRAY_TYPE || RECORD_OR_UNION_TYPE_P (TYPE)(((enum tree_code) (TYPE)->base.code) == RECORD_TYPE || (( enum tree_code) (TYPE)->base.code) == UNION_TYPE || ((enum tree_code) (TYPE)->base.code) == QUAL_UNION_TYPE)) |
599 | |
600 | /* Nonzero if TYPE represents a pointer or reference type. |
601 | (It should be renamed to INDIRECT_TYPE_P.) Keep these checks in |
602 | ascending code order. */ |
603 | |
604 | #define POINTER_TYPE_P(TYPE)(((enum tree_code) (TYPE)->base.code) == POINTER_TYPE || ( (enum tree_code) (TYPE)->base.code) == REFERENCE_TYPE) \ |
605 | (TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == POINTER_TYPE || TREE_CODE (TYPE)((enum tree_code) (TYPE)->base.code) == REFERENCE_TYPE) |
606 | |
607 | /* Nonzero if TYPE represents a pointer to function. */ |
608 | #define FUNCTION_POINTER_TYPE_P(TYPE)((((enum tree_code) (TYPE)->base.code) == POINTER_TYPE || ( (enum tree_code) (TYPE)->base.code) == REFERENCE_TYPE) && ((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 608, __FUNCTION__))->typed.type))->base.code) == FUNCTION_TYPE ) \ |
609 | (POINTER_TYPE_P (TYPE)(((enum tree_code) (TYPE)->base.code) == POINTER_TYPE || ( (enum tree_code) (TYPE)->base.code) == REFERENCE_TYPE) && TREE_CODE (TREE_TYPE (TYPE))((enum tree_code) (((contains_struct_check ((TYPE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 609, __FUNCTION__))->typed.type))->base.code) == FUNCTION_TYPE) |
610 | |
611 | /* Nonzero if this type is a complete type. */ |
612 | #define COMPLETE_TYPE_P(NODE)(((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 612, __FUNCTION__))->type_common.size) != (tree) nullptr ) (TYPE_SIZE (NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 612, __FUNCTION__))->type_common.size) != NULL_TREE(tree) nullptr) |
613 | |
614 | /* Nonzero if this type is the (possibly qualified) void type. */ |
615 | #define VOID_TYPE_P(NODE)(((enum tree_code) (NODE)->base.code) == VOID_TYPE) (TREE_CODE (NODE)((enum tree_code) (NODE)->base.code) == VOID_TYPE) |
616 | |
617 | /* Nonzero if this type is complete or is cv void. */ |
618 | #define COMPLETE_OR_VOID_TYPE_P(NODE)((((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 618, __FUNCTION__))->type_common.size) != (tree) nullptr ) || (((enum tree_code) (NODE)->base.code) == VOID_TYPE)) \ |
619 | (COMPLETE_TYPE_P (NODE)(((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 619, __FUNCTION__))->type_common.size) != (tree) nullptr ) || VOID_TYPE_P (NODE)(((enum tree_code) (NODE)->base.code) == VOID_TYPE)) |
620 | |
621 | /* Nonzero if this type is complete or is an array with unspecified bound. */ |
622 | #define COMPLETE_OR_UNBOUND_ARRAY_TYPE_P(NODE)((((tree_class_check ((((enum tree_code) (NODE)->base.code ) == ARRAY_TYPE ? ((contains_struct_check ((NODE), (TS_TYPED) , "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 622, __FUNCTION__))->typed.type) : (NODE)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 622, __FUNCTION__))->type_common.size) != (tree) nullptr )) \ |
623 | (COMPLETE_TYPE_P (TREE_CODE (NODE) == ARRAY_TYPE ? TREE_TYPE (NODE) : (NODE))(((tree_class_check ((((enum tree_code) (NODE)->base.code) == ARRAY_TYPE ? ((contains_struct_check ((NODE), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 623, __FUNCTION__))->typed.type) : (NODE)), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 623, __FUNCTION__))->type_common.size) != (tree) nullptr )) |
624 | |
625 | #define FUNC_OR_METHOD_TYPE_P(NODE)(((enum tree_code) (NODE)->base.code) == FUNCTION_TYPE || ( (enum tree_code) (NODE)->base.code) == METHOD_TYPE) \ |
626 | (TREE_CODE (NODE)((enum tree_code) (NODE)->base.code) == FUNCTION_TYPE || TREE_CODE (NODE)((enum tree_code) (NODE)->base.code) == METHOD_TYPE) |
627 | |
628 | #define OPAQUE_TYPE_P(NODE)(((enum tree_code) (NODE)->base.code) == OPAQUE_TYPE) \ |
629 | (TREE_CODE (NODE)((enum tree_code) (NODE)->base.code) == OPAQUE_TYPE) |
630 | |
631 | /* Define many boolean fields that all tree nodes have. */ |
632 | |
633 | /* In VAR_DECL, PARM_DECL and RESULT_DECL nodes, nonzero means address |
634 | of this is needed. So it cannot be in a register. |
635 | In a FUNCTION_DECL it has no meaning. |
636 | In LABEL_DECL nodes, it means a goto for this label has been seen |
637 | from a place outside all binding contours that restore stack levels. |
638 | In an artificial SSA_NAME that points to a stack partition with at least |
639 | two variables, it means that at least one variable has TREE_ADDRESSABLE. |
640 | In ..._TYPE nodes, it means that objects of this type must be fully |
641 | addressable. This means that pieces of this object cannot go into |
642 | register parameters, for example. If this a function type, this |
643 | means that the value must be returned in memory. |
644 | In CONSTRUCTOR nodes, it means object constructed must be in memory. |
645 | In IDENTIFIER_NODEs, this means that some extern decl for this name |
646 | had its address taken. That matters for inline functions. |
647 | In a STMT_EXPR, it means we want the result of the enclosed expression. */ |
648 | #define TREE_ADDRESSABLE(NODE)((NODE)->base.addressable_flag) ((NODE)->base.addressable_flag) |
649 | |
650 | /* Set on a CALL_EXPR if the call is in a tail position, ie. just before the |
651 | exit of a function. Calls for which this is true are candidates for tail |
652 | call optimizations. */ |
653 | #define CALL_EXPR_TAILCALL(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 653, __FUNCTION__, (CALL_EXPR)))->base.addressable_flag) \ |
654 | (CALL_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 654, __FUNCTION__, (CALL_EXPR)))->base.addressable_flag) |
655 | |
656 | /* Set on a CALL_EXPR if the call has been marked as requiring tail call |
657 | optimization for correctness. */ |
658 | #define CALL_EXPR_MUST_TAIL_CALL(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 658, __FUNCTION__, (CALL_EXPR)))->base.static_flag) \ |
659 | (CALL_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 659, __FUNCTION__, (CALL_EXPR)))->base.static_flag) |
660 | |
661 | /* Used as a temporary field on a CASE_LABEL_EXPR to indicate that the |
662 | CASE_LOW operand has been processed. */ |
663 | #define CASE_LOW_SEEN(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 663, __FUNCTION__, (CASE_LABEL_EXPR)))->base.addressable_flag ) \ |
664 | (CASE_LABEL_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 664, __FUNCTION__, (CASE_LABEL_EXPR)))->base.addressable_flag) |
665 | |
666 | #define PREDICT_EXPR_OUTCOME(NODE)((enum prediction) ((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 666, __FUNCTION__, (PREDICT_EXPR)))->base.addressable_flag )) \ |
667 | ((enum prediction) (PREDICT_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 667, __FUNCTION__, (PREDICT_EXPR)))->base.addressable_flag)) |
668 | #define SET_PREDICT_EXPR_OUTCOME(NODE, OUTCOME)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 668, __FUNCTION__, (PREDICT_EXPR)))->base.addressable_flag = (int) OUTCOME) \ |
669 | (PREDICT_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 669, __FUNCTION__, (PREDICT_EXPR)))->base.addressable_flag = (int) OUTCOME) |
670 | #define PREDICT_EXPR_PREDICTOR(NODE)((enum br_predictor)tree_to_shwi ((*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 670, __FUNCTION__, (PREDICT_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 670, __FUNCTION__))))))) \ |
671 | ((enum br_predictor)tree_to_shwi (TREE_OPERAND (PREDICT_EXPR_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 671, __FUNCTION__, (PREDICT_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 671, __FUNCTION__))))))) |
672 | |
673 | /* In a VAR_DECL, nonzero means allocate static storage. |
674 | In a FUNCTION_DECL, nonzero if function has been defined. |
675 | In a CONSTRUCTOR, nonzero means allocate static storage. */ |
676 | #define TREE_STATIC(NODE)((NODE)->base.static_flag) ((NODE)->base.static_flag) |
677 | |
678 | /* In an ADDR_EXPR, nonzero means do not use a trampoline. */ |
679 | #define TREE_NO_TRAMPOLINE(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 679, __FUNCTION__, (ADDR_EXPR)))->base.static_flag) (ADDR_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 679, __FUNCTION__, (ADDR_EXPR)))->base.static_flag) |
680 | |
681 | /* In a TARGET_EXPR or WITH_CLEANUP_EXPR, means that the pertinent cleanup |
682 | should only be executed if an exception is thrown, not on normal exit |
683 | of its scope. */ |
684 | #define CLEANUP_EH_ONLY(NODE)((NODE)->base.static_flag) ((NODE)->base.static_flag) |
685 | |
686 | /* In a TRY_CATCH_EXPR, means that the handler should be considered a |
687 | separate cleanup in honor_protect_cleanup_actions. */ |
688 | #define TRY_CATCH_IS_CLEANUP(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 688, __FUNCTION__, (TRY_CATCH_EXPR)))->base.static_flag) \ |
689 | (TRY_CATCH_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 689, __FUNCTION__, (TRY_CATCH_EXPR)))->base.static_flag) |
690 | |
691 | /* Used as a temporary field on a CASE_LABEL_EXPR to indicate that the |
692 | CASE_HIGH operand has been processed. */ |
693 | #define CASE_HIGH_SEEN(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 693, __FUNCTION__, (CASE_LABEL_EXPR)))->base.static_flag ) \ |
694 | (CASE_LABEL_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 694, __FUNCTION__, (CASE_LABEL_EXPR)))->base.static_flag) |
695 | |
696 | /* Used to mark scoped enums. */ |
697 | #define ENUM_IS_SCOPED(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 697, __FUNCTION__, (ENUMERAL_TYPE)))->base.static_flag) (ENUMERAL_TYPE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 697, __FUNCTION__, (ENUMERAL_TYPE)))->base.static_flag) |
698 | |
699 | /* Determines whether an ENUMERAL_TYPE has defined the list of constants. */ |
700 | #define ENUM_IS_OPAQUE(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 700, __FUNCTION__, (ENUMERAL_TYPE)))->base.private_flag) (ENUMERAL_TYPE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 700, __FUNCTION__, (ENUMERAL_TYPE)))->base.private_flag) |
701 | |
702 | /* In an expr node (usually a conversion) this means the node was made |
703 | implicitly and should not lead to any sort of warning. In a decl node, |
704 | warnings concerning the decl should be suppressed. This is used at |
705 | least for used-before-set warnings, and it set after one warning is |
706 | emitted. */ |
707 | #define TREE_NO_WARNING(NODE)((NODE)->base.nowarning_flag) ((NODE)->base.nowarning_flag) |
708 | |
709 | /* Nonzero if we should warn about the change in empty class parameter |
710 | passing ABI in this TU. */ |
711 | #define TRANSLATION_UNIT_WARN_EMPTY_P(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 711, __FUNCTION__, (TRANSLATION_UNIT_DECL)))->decl_common .decl_flag_0) \ |
712 | (TRANSLATION_UNIT_DECL_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 712, __FUNCTION__, (TRANSLATION_UNIT_DECL)))->decl_common.decl_flag_0) |
713 | |
714 | /* Nonzero if this type is "empty" according to the particular psABI. */ |
715 | #define TYPE_EMPTY_P(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 715, __FUNCTION__))->type_common.empty_flag) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 715, __FUNCTION__))->type_common.empty_flag) |
716 | |
717 | /* Used to indicate that this TYPE represents a compiler-generated entity. */ |
718 | #define TYPE_ARTIFICIAL(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 718, __FUNCTION__))->base.nowarning_flag) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 718, __FUNCTION__))->base.nowarning_flag) |
719 | |
720 | /* True if the type is indivisible at the source level, i.e. if its |
721 | component parts cannot be accessed directly. This is used to suppress |
722 | normal GNU extensions for target-specific vector types. */ |
723 | #define TYPE_INDIVISIBLE_P(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 723, __FUNCTION__))->type_common.indivisible_p) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 723, __FUNCTION__))->type_common.indivisible_p) |
724 | |
725 | /* In an IDENTIFIER_NODE, this means that assemble_name was called with |
726 | this string as an argument. */ |
727 | #define TREE_SYMBOL_REFERENCED(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 727, __FUNCTION__, (IDENTIFIER_NODE)))->base.static_flag ) \ |
728 | (IDENTIFIER_NODE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 728, __FUNCTION__, (IDENTIFIER_NODE)))->base.static_flag) |
729 | |
730 | /* Nonzero in a pointer or reference type means the data pointed to |
731 | by this type can alias anything. */ |
732 | #define TYPE_REF_CAN_ALIAS_ALL(NODE)((tree_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 732, __FUNCTION__, (POINTER_TYPE), (REFERENCE_TYPE)))->base .static_flag) \ |
733 | (PTR_OR_REF_CHECK (NODE)(tree_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 733, __FUNCTION__, (POINTER_TYPE), (REFERENCE_TYPE)))->base.static_flag) |
734 | |
735 | /* In an INTEGER_CST, REAL_CST, COMPLEX_CST, or VECTOR_CST, this means |
736 | there was an overflow in folding. */ |
737 | |
738 | #define TREE_OVERFLOW(NODE)((tree_class_check ((NODE), (tcc_constant), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 738, __FUNCTION__))->base.public_flag) (CST_CHECK (NODE)(tree_class_check ((NODE), (tcc_constant), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 738, __FUNCTION__))->base.public_flag) |
739 | |
740 | /* TREE_OVERFLOW can only be true for EXPR of CONSTANT_CLASS_P. */ |
741 | |
742 | #define TREE_OVERFLOW_P(EXPR)((tree_code_type[(int) (((enum tree_code) (EXPR)->base.code ))] == tcc_constant) && ((tree_class_check ((EXPR), ( tcc_constant), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 742, __FUNCTION__))->base.public_flag)) \ |
743 | (CONSTANT_CLASS_P (EXPR)(tree_code_type[(int) (((enum tree_code) (EXPR)->base.code ))] == tcc_constant) && TREE_OVERFLOW (EXPR)((tree_class_check ((EXPR), (tcc_constant), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 743, __FUNCTION__))->base.public_flag)) |
744 | |
745 | /* In a VAR_DECL, FUNCTION_DECL, NAMESPACE_DECL or TYPE_DECL, |
746 | nonzero means name is to be accessible from outside this translation unit. |
747 | In an IDENTIFIER_NODE, nonzero means an external declaration |
748 | accessible from outside this translation unit was previously seen |
749 | for this name in an inner scope. */ |
750 | #define TREE_PUBLIC(NODE)((NODE)->base.public_flag) ((NODE)->base.public_flag) |
751 | |
752 | /* In a _TYPE, indicates whether TYPE_CACHED_VALUES contains a vector |
753 | of cached values, or is something else. */ |
754 | #define TYPE_CACHED_VALUES_P(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 754, __FUNCTION__))->base.public_flag) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 754, __FUNCTION__))->base.public_flag) |
755 | |
756 | /* In a SAVE_EXPR, indicates that the original expression has already |
757 | been substituted with a VAR_DECL that contains the value. */ |
758 | #define SAVE_EXPR_RESOLVED_P(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 758, __FUNCTION__, (SAVE_EXPR)))->base.public_flag) \ |
759 | (SAVE_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 759, __FUNCTION__, (SAVE_EXPR)))->base.public_flag) |
760 | |
761 | /* Set on a CALL_EXPR if this stdarg call should be passed the argument |
762 | pack. */ |
763 | #define CALL_EXPR_VA_ARG_PACK(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 763, __FUNCTION__, (CALL_EXPR)))->base.public_flag) \ |
764 | (CALL_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 764, __FUNCTION__, (CALL_EXPR)))->base.public_flag) |
765 | |
766 | /* In any expression, decl, or constant, nonzero means it has side effects or |
767 | reevaluation of the whole expression could produce a different value. |
768 | This is set if any subexpression is a function call, a side effect or a |
769 | reference to a volatile variable. In a ..._DECL, this is set only if the |
770 | declaration said `volatile'. This will never be set for a constant. */ |
771 | #define TREE_SIDE_EFFECTS(NODE)((non_type_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 771, __FUNCTION__))->base.side_effects_flag) \ |
772 | (NON_TYPE_CHECK (NODE)(non_type_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 772, __FUNCTION__))->base.side_effects_flag) |
773 | |
774 | /* In a LABEL_DECL, nonzero means this label had its address taken |
775 | and therefore can never be deleted and is a jump target for |
776 | computed gotos. */ |
777 | #define FORCED_LABEL(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 777, __FUNCTION__, (LABEL_DECL)))->base.side_effects_flag ) (LABEL_DECL_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 777, __FUNCTION__, (LABEL_DECL)))->base.side_effects_flag) |
778 | |
779 | /* Whether a case or a user-defined label is allowed to fall through to. |
780 | This is used to implement -Wimplicit-fallthrough. */ |
781 | #define FALLTHROUGH_LABEL_P(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 781, __FUNCTION__, (LABEL_DECL)))->base.private_flag) \ |
782 | (LABEL_DECL_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 782, __FUNCTION__, (LABEL_DECL)))->base.private_flag) |
783 | |
784 | /* Set on the artificial label created for break; stmt from a switch. |
785 | This is used to implement -Wimplicit-fallthrough. */ |
786 | #define SWITCH_BREAK_LABEL_P(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 786, __FUNCTION__, (LABEL_DECL)))->base.protected_flag) \ |
787 | (LABEL_DECL_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 787, __FUNCTION__, (LABEL_DECL)))->base.protected_flag) |
788 | |
789 | /* Nonzero means this expression is volatile in the C sense: |
790 | its address should be of type `volatile WHATEVER *'. |
791 | In other words, the declared item is volatile qualified. |
792 | This is used in _DECL nodes and _REF nodes. |
793 | On a FUNCTION_DECL node, this means the function does not |
794 | return normally. This is the same effect as setting |
795 | the attribute noreturn on the function in C. |
796 | |
797 | In a ..._TYPE node, means this type is volatile-qualified. |
798 | But use TYPE_VOLATILE instead of this macro when the node is a type, |
799 | because eventually we may make that a different bit. |
800 | |
801 | If this bit is set in an expression, so is TREE_SIDE_EFFECTS. */ |
802 | #define TREE_THIS_VOLATILE(NODE)((NODE)->base.volatile_flag) ((NODE)->base.volatile_flag) |
803 | |
804 | /* Nonzero means this node will not trap. In an INDIRECT_REF, means |
805 | accessing the memory pointed to won't generate a trap. However, |
806 | this only applies to an object when used appropriately: it doesn't |
807 | mean that writing a READONLY mem won't trap. |
808 | |
809 | In ARRAY_REF and ARRAY_RANGE_REF means that we know that the index |
810 | (or slice of the array) always belongs to the range of the array. |
811 | I.e. that the access will not trap, provided that the access to |
812 | the base to the array will not trap. */ |
813 | #define TREE_THIS_NOTRAP(NODE)((tree_check5 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 813, __FUNCTION__, (INDIRECT_REF), (MEM_REF), (TARGET_MEM_REF ), (ARRAY_REF), (ARRAY_RANGE_REF)))->base.nothrow_flag) \ |
814 | (TREE_CHECK5 (NODE, INDIRECT_REF, MEM_REF, TARGET_MEM_REF, ARRAY_REF, \(tree_check5 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 815, __FUNCTION__, (INDIRECT_REF), (MEM_REF), (TARGET_MEM_REF ), (ARRAY_REF), (ARRAY_RANGE_REF))) |
815 | ARRAY_RANGE_REF)(tree_check5 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 815, __FUNCTION__, (INDIRECT_REF), (MEM_REF), (TARGET_MEM_REF ), (ARRAY_REF), (ARRAY_RANGE_REF)))->base.nothrow_flag) |
816 | |
817 | /* In a VAR_DECL, PARM_DECL or FIELD_DECL, or any kind of ..._REF node, |
818 | nonzero means it may not be the lhs of an assignment. |
819 | Nonzero in a FUNCTION_DECL means this function should be treated |
820 | as "const" function (can only read its arguments). */ |
821 | #define TREE_READONLY(NODE)((non_type_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 821, __FUNCTION__))->base.readonly_flag) (NON_TYPE_CHECK (NODE)(non_type_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 821, __FUNCTION__))->base.readonly_flag) |
822 | |
823 | /* Value of expression is constant. Always on in all ..._CST nodes. May |
824 | also appear in an expression or decl where the value is constant. */ |
825 | #define TREE_CONSTANT(NODE)((non_type_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 825, __FUNCTION__))->base.constant_flag) (NON_TYPE_CHECK (NODE)(non_type_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 825, __FUNCTION__))->base.constant_flag) |
826 | |
827 | /* Nonzero if NODE, a type, has had its sizes gimplified. */ |
828 | #define TYPE_SIZES_GIMPLIFIED(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 828, __FUNCTION__))->base.constant_flag) \ |
829 | (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 829, __FUNCTION__))->base.constant_flag) |
830 | |
831 | /* In a decl (most significantly a FIELD_DECL), means an unsigned field. */ |
832 | #define DECL_UNSIGNED(NODE)((contains_struct_check ((NODE), (TS_DECL_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 832, __FUNCTION__))->base.u.bits.unsigned_flag) \ |
833 | (DECL_COMMON_CHECK (NODE)(contains_struct_check ((NODE), (TS_DECL_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 833, __FUNCTION__))->base.u.bits.unsigned_flag) |
834 | |
835 | /* In integral and pointer types, means an unsigned type. */ |
836 | #define TYPE_UNSIGNED(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 836, __FUNCTION__))->base.u.bits.unsigned_flag) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 836, __FUNCTION__))->base.u.bits.unsigned_flag) |
837 | |
838 | /* Same as TYPE_UNSIGNED but converted to SIGNOP. */ |
839 | #define TYPE_SIGN(NODE)((signop) ((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 839, __FUNCTION__))->base.u.bits.unsigned_flag)) ((signop) TYPE_UNSIGNED (NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 839, __FUNCTION__))->base.u.bits.unsigned_flag)) |
840 | |
841 | /* True if overflow wraps around for the given integral or pointer type. That |
842 | is, TYPE_MAX + 1 == TYPE_MIN. */ |
843 | #define TYPE_OVERFLOW_WRAPS(TYPE)((((enum tree_code) (TYPE)->base.code) == POINTER_TYPE || ( (enum tree_code) (TYPE)->base.code) == REFERENCE_TYPE) ? flag_wrapv_pointer : ((any_integral_type_check ((TYPE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 843, __FUNCTION__))->base.u.bits.unsigned_flag || flag_wrapv )) \ |
844 | (POINTER_TYPE_P (TYPE)(((enum tree_code) (TYPE)->base.code) == POINTER_TYPE || ( (enum tree_code) (TYPE)->base.code) == REFERENCE_TYPE) \ |
845 | ? flag_wrapv_pointer \ |
846 | : (ANY_INTEGRAL_TYPE_CHECK(TYPE)(any_integral_type_check ((TYPE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 846, __FUNCTION__))->base.u.bits.unsigned_flag \ |
847 | || flag_wrapv)) |
848 | |
849 | /* True if overflow is undefined for the given integral or pointer type. |
850 | We may optimize on the assumption that values in the type never overflow. |
851 | |
852 | IMPORTANT NOTE: Any optimization based on TYPE_OVERFLOW_UNDEFINED |
853 | must issue a warning based on warn_strict_overflow. In some cases |
854 | it will be appropriate to issue the warning immediately, and in |
855 | other cases it will be appropriate to simply set a flag and let the |
856 | caller decide whether a warning is appropriate or not. */ |
857 | #define TYPE_OVERFLOW_UNDEFINED(TYPE)((((enum tree_code) (TYPE)->base.code) == POINTER_TYPE || ( (enum tree_code) (TYPE)->base.code) == REFERENCE_TYPE) ? ! flag_wrapv_pointer : (!(any_integral_type_check ((TYPE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 857, __FUNCTION__))->base.u.bits.unsigned_flag && !flag_wrapv && !flag_trapv)) \ |
858 | (POINTER_TYPE_P (TYPE)(((enum tree_code) (TYPE)->base.code) == POINTER_TYPE || ( (enum tree_code) (TYPE)->base.code) == REFERENCE_TYPE) \ |
859 | ? !flag_wrapv_pointer \ |
860 | : (!ANY_INTEGRAL_TYPE_CHECK(TYPE)(any_integral_type_check ((TYPE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 860, __FUNCTION__))->base.u.bits.unsigned_flag \ |
861 | && !flag_wrapv && !flag_trapv)) |
862 | |
863 | /* True if overflow for the given integral type should issue a |
864 | trap. */ |
865 | #define TYPE_OVERFLOW_TRAPS(TYPE)(!(any_integral_type_check ((TYPE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 865, __FUNCTION__))->base.u.bits.unsigned_flag && flag_trapv) \ |
866 | (!ANY_INTEGRAL_TYPE_CHECK(TYPE)(any_integral_type_check ((TYPE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 866, __FUNCTION__))->base.u.bits.unsigned_flag && flag_trapv) |
867 | |
868 | /* True if an overflow is to be preserved for sanitization. */ |
869 | #define TYPE_OVERFLOW_SANITIZED(TYPE)((((enum tree_code) (TYPE)->base.code) == ENUMERAL_TYPE || ((enum tree_code) (TYPE)->base.code) == BOOLEAN_TYPE || ( (enum tree_code) (TYPE)->base.code) == INTEGER_TYPE) && !((((enum tree_code) (TYPE)->base.code) == POINTER_TYPE || ((enum tree_code) (TYPE)->base.code) == REFERENCE_TYPE) ? flag_wrapv_pointer : ((any_integral_type_check ((TYPE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 869, __FUNCTION__))->base.u.bits.unsigned_flag || flag_wrapv )) && (flag_sanitize & SANITIZE_SI_OVERFLOW)) \ |
870 | (INTEGRAL_TYPE_P (TYPE)(((enum tree_code) (TYPE)->base.code) == ENUMERAL_TYPE || ( (enum tree_code) (TYPE)->base.code) == BOOLEAN_TYPE || ((enum tree_code) (TYPE)->base.code) == INTEGER_TYPE) \ |
871 | && !TYPE_OVERFLOW_WRAPS (TYPE)((((enum tree_code) (TYPE)->base.code) == POINTER_TYPE || ( (enum tree_code) (TYPE)->base.code) == REFERENCE_TYPE) ? flag_wrapv_pointer : ((any_integral_type_check ((TYPE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 871, __FUNCTION__))->base.u.bits.unsigned_flag || flag_wrapv )) \ |
872 | && (flag_sanitize & SANITIZE_SI_OVERFLOW)) |
873 | |
874 | /* Nonzero in a VAR_DECL or STRING_CST means assembler code has been written. |
875 | Nonzero in a FUNCTION_DECL means that the function has been compiled. |
876 | This is interesting in an inline function, since it might not need |
877 | to be compiled separately. |
878 | Nonzero in a RECORD_TYPE, UNION_TYPE, QUAL_UNION_TYPE, ENUMERAL_TYPE |
879 | or TYPE_DECL if the debugging info for the type has been written. |
880 | In a BLOCK node, nonzero if reorder_blocks has already seen this block. |
881 | In an SSA_NAME node, nonzero if the SSA_NAME occurs in an abnormal |
882 | PHI node. */ |
883 | #define TREE_ASM_WRITTEN(NODE)((NODE)->base.asm_written_flag) ((NODE)->base.asm_written_flag) |
884 | |
885 | /* Nonzero in a _DECL if the name is used in its scope. |
886 | Nonzero in an expr node means inhibit warning if value is unused. |
887 | In IDENTIFIER_NODEs, this means that some extern decl for this name |
888 | was used. |
889 | In a BLOCK, this means that the block contains variables that are used. */ |
890 | #define TREE_USED(NODE)((NODE)->base.used_flag) ((NODE)->base.used_flag) |
891 | |
892 | /* In a FUNCTION_DECL, nonzero means a call to the function cannot |
893 | throw an exception. In a CALL_EXPR, nonzero means the call cannot |
894 | throw. We can't easily check the node type here as the C++ |
895 | frontend also uses this flag (for AGGR_INIT_EXPR). */ |
896 | #define TREE_NOTHROW(NODE)((NODE)->base.nothrow_flag) ((NODE)->base.nothrow_flag) |
897 | |
898 | /* In a CALL_EXPR, means that it's safe to use the target of the call |
899 | expansion as the return slot for a call that returns in memory. */ |
900 | #define CALL_EXPR_RETURN_SLOT_OPT(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 900, __FUNCTION__, (CALL_EXPR)))->base.private_flag) \ |
901 | (CALL_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 901, __FUNCTION__, (CALL_EXPR)))->base.private_flag) |
902 | |
903 | /* In a RESULT_DECL, PARM_DECL and VAR_DECL, means that it is |
904 | passed by invisible reference (and the TREE_TYPE is a pointer to the true |
905 | type). */ |
906 | #define DECL_BY_REFERENCE(NODE)((tree_check3 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 906, __FUNCTION__, (VAR_DECL), (PARM_DECL), (RESULT_DECL))) ->decl_common.decl_by_reference_flag) \ |
907 | (TREE_CHECK3 (NODE, VAR_DECL, PARM_DECL, \(tree_check3 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 908, __FUNCTION__, (VAR_DECL), (PARM_DECL), (RESULT_DECL))) |
908 | RESULT_DECL)(tree_check3 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 908, __FUNCTION__, (VAR_DECL), (PARM_DECL), (RESULT_DECL)))->decl_common.decl_by_reference_flag) |
909 | |
910 | /* In VAR_DECL and PARM_DECL, set when the decl has been used except for |
911 | being set. */ |
912 | #define DECL_READ_P(NODE)((tree_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 912, __FUNCTION__, (VAR_DECL), (PARM_DECL)))->decl_common .decl_read_flag) \ |
913 | (TREE_CHECK2 (NODE, VAR_DECL, PARM_DECL)(tree_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 913, __FUNCTION__, (VAR_DECL), (PARM_DECL)))->decl_common.decl_read_flag) |
914 | |
915 | /* In VAR_DECL or RESULT_DECL, set when significant code movement precludes |
916 | attempting to share the stack slot with some other variable. */ |
917 | #define DECL_NONSHAREABLE(NODE)((tree_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 917, __FUNCTION__, (VAR_DECL), (RESULT_DECL)))->decl_common .decl_nonshareable_flag) \ |
918 | (TREE_CHECK2 (NODE, VAR_DECL, \(tree_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 919, __FUNCTION__, (VAR_DECL), (RESULT_DECL))) |
919 | RESULT_DECL)(tree_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 919, __FUNCTION__, (VAR_DECL), (RESULT_DECL)))->decl_common.decl_nonshareable_flag) |
920 | |
921 | /* In a PARM_DECL, set for Fortran hidden string length arguments that some |
922 | buggy callers don't pass to the callee. */ |
923 | #define DECL_HIDDEN_STRING_LENGTH(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 923, __FUNCTION__, (PARM_DECL)))->decl_common.decl_nonshareable_flag ) \ |
924 | (TREE_CHECK (NODE, PARM_DECL)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 924, __FUNCTION__, (PARM_DECL)))->decl_common.decl_nonshareable_flag) |
925 | |
926 | /* In a CALL_EXPR, means that the call is the jump from a thunk to the |
927 | thunked-to function. Be careful to avoid using this macro when one of the |
928 | next two applies instead. */ |
929 | #define CALL_FROM_THUNK_P(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 929, __FUNCTION__, (CALL_EXPR)))->base.protected_flag) (CALL_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 929, __FUNCTION__, (CALL_EXPR)))->base.protected_flag) |
930 | |
931 | /* In a CALL_EXPR, if the function being called is BUILT_IN_ALLOCA, means that |
932 | it has been built for the declaration of a variable-sized object and, if the |
933 | function being called is BUILT_IN_MEMCPY, means that it has been built for |
934 | the assignment of a variable-sized object. */ |
935 | #define CALL_ALLOCA_FOR_VAR_P(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 935, __FUNCTION__, (CALL_EXPR)))->base.protected_flag) \ |
936 | (CALL_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 936, __FUNCTION__, (CALL_EXPR)))->base.protected_flag) |
937 | |
938 | /* In a CALL_EXPR, if the function being called is DECL_IS_OPERATOR_NEW_P or |
939 | DECL_IS_OPERATOR_DELETE_P, true for allocator calls from C++ new or delete |
940 | expressions. */ |
941 | #define CALL_FROM_NEW_OR_DELETE_P(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 941, __FUNCTION__, (CALL_EXPR)))->base.protected_flag) \ |
942 | (CALL_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 942, __FUNCTION__, (CALL_EXPR)))->base.protected_flag) |
943 | |
944 | /* Used in classes in C++. */ |
945 | #define TREE_PRIVATE(NODE)((NODE)->base.private_flag) ((NODE)->base.private_flag) |
946 | /* Used in classes in C++. */ |
947 | #define TREE_PROTECTED(NODE)((NODE)->base.protected_flag) ((NODE)->base.protected_flag) |
948 | |
949 | /* True if reference type NODE is a C++ rvalue reference. */ |
950 | #define TYPE_REF_IS_RVALUE(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 950, __FUNCTION__, (REFERENCE_TYPE)))->base.private_flag ) \ |
951 | (REFERENCE_TYPE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 951, __FUNCTION__, (REFERENCE_TYPE)))->base.private_flag) |
952 | |
953 | /* Nonzero in a _DECL if the use of the name is defined as a |
954 | deprecated feature by __attribute__((deprecated)). */ |
955 | #define TREE_DEPRECATED(NODE)((NODE)->base.deprecated_flag) \ |
956 | ((NODE)->base.deprecated_flag) |
957 | |
958 | /* Nonzero indicates an IDENTIFIER_NODE that names an anonymous |
959 | aggregate, (as created by anon_aggr_name_format). */ |
960 | #define IDENTIFIER_ANON_P(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 960, __FUNCTION__, (IDENTIFIER_NODE)))->base.private_flag ) \ |
961 | (IDENTIFIER_NODE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 961, __FUNCTION__, (IDENTIFIER_NODE)))->base.private_flag) |
962 | |
963 | /* Nonzero in an IDENTIFIER_NODE if the name is a local alias, whose |
964 | uses are to be substituted for uses of the TREE_CHAINed identifier. */ |
965 | #define IDENTIFIER_TRANSPARENT_ALIAS(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 965, __FUNCTION__, (IDENTIFIER_NODE)))->base.deprecated_flag ) \ |
966 | (IDENTIFIER_NODE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 966, __FUNCTION__, (IDENTIFIER_NODE)))->base.deprecated_flag) |
967 | |
968 | /* In an aggregate type, indicates that the scalar fields of the type are |
969 | stored in reverse order from the target order. This effectively |
970 | toggles BYTES_BIG_ENDIAN and WORDS_BIG_ENDIAN within the type. */ |
971 | #define TYPE_REVERSE_STORAGE_ORDER(NODE)((tree_check4 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 971, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE ), (ARRAY_TYPE)))->base.u.bits.saturating_flag) \ |
972 | (TREE_CHECK4 (NODE, RECORD_TYPE, UNION_TYPE, QUAL_UNION_TYPE, ARRAY_TYPE)(tree_check4 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 972, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE ), (ARRAY_TYPE)))->base.u.bits.saturating_flag) |
973 | |
974 | /* In a non-aggregate type, indicates a saturating type. */ |
975 | #define TYPE_SATURATING(NODE)((tree_not_check4 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 975, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE ), (ARRAY_TYPE)))->base.u.bits.saturating_flag) \ |
976 | (TREE_NOT_CHECK4 (NODE, RECORD_TYPE, UNION_TYPE, QUAL_UNION_TYPE, ARRAY_TYPE)(tree_not_check4 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 976, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE ), (ARRAY_TYPE)))->base.u.bits.saturating_flag) |
977 | |
978 | /* In a BIT_FIELD_REF and MEM_REF, indicates that the reference is to a group |
979 | of bits stored in reverse order from the target order. This effectively |
980 | toggles both BYTES_BIG_ENDIAN and WORDS_BIG_ENDIAN for the reference. |
981 | |
982 | The overall strategy is to preserve the invariant that every scalar in |
983 | memory is associated with a single storage order, i.e. all accesses to |
984 | this scalar are done with the same storage order. This invariant makes |
985 | it possible to factor out the storage order in most transformations, as |
986 | only the address and/or the value (in target order) matter for them. |
987 | But, of course, the storage order must be preserved when the accesses |
988 | themselves are rewritten or transformed. */ |
989 | #define REF_REVERSE_STORAGE_ORDER(NODE)((tree_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 989, __FUNCTION__, (BIT_FIELD_REF), (MEM_REF)))->base.default_def_flag ) \ |
990 | (TREE_CHECK2 (NODE, BIT_FIELD_REF, MEM_REF)(tree_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 990, __FUNCTION__, (BIT_FIELD_REF), (MEM_REF)))->base.default_def_flag) |
991 | |
992 | /* In an ADDR_EXPR, indicates that this is a pointer to nested function |
993 | represented by a descriptor instead of a trampoline. */ |
994 | #define FUNC_ADDR_BY_DESCRIPTOR(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 994, __FUNCTION__, (ADDR_EXPR)))->base.default_def_flag) \ |
995 | (TREE_CHECK (NODE, ADDR_EXPR)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 995, __FUNCTION__, (ADDR_EXPR)))->base.default_def_flag) |
996 | |
997 | /* In a CALL_EXPR, indicates that this is an indirect call for which |
998 | pointers to nested function are descriptors instead of trampolines. */ |
999 | #define CALL_EXPR_BY_DESCRIPTOR(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 999, __FUNCTION__, (CALL_EXPR)))->base.default_def_flag) \ |
1000 | (TREE_CHECK (NODE, CALL_EXPR)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1000, __FUNCTION__, (CALL_EXPR)))->base.default_def_flag) |
1001 | |
1002 | /* These flags are available for each language front end to use internally. */ |
1003 | #define TREE_LANG_FLAG_0(NODE)((tree_not_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1003, __FUNCTION__, (TREE_VEC), (SSA_NAME)))->base.u.bits .lang_flag_0) \ |
1004 | (TREE_NOT_CHECK2 (NODE, TREE_VEC, SSA_NAME)(tree_not_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1004, __FUNCTION__, (TREE_VEC), (SSA_NAME)))->base.u.bits.lang_flag_0) |
1005 | #define TREE_LANG_FLAG_1(NODE)((tree_not_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1005, __FUNCTION__, (TREE_VEC), (SSA_NAME)))->base.u.bits .lang_flag_1) \ |
1006 | (TREE_NOT_CHECK2 (NODE, TREE_VEC, SSA_NAME)(tree_not_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1006, __FUNCTION__, (TREE_VEC), (SSA_NAME)))->base.u.bits.lang_flag_1) |
1007 | #define TREE_LANG_FLAG_2(NODE)((tree_not_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1007, __FUNCTION__, (TREE_VEC), (SSA_NAME)))->base.u.bits .lang_flag_2) \ |
1008 | (TREE_NOT_CHECK2 (NODE, TREE_VEC, SSA_NAME)(tree_not_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1008, __FUNCTION__, (TREE_VEC), (SSA_NAME)))->base.u.bits.lang_flag_2) |
1009 | #define TREE_LANG_FLAG_3(NODE)((tree_not_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1009, __FUNCTION__, (TREE_VEC), (SSA_NAME)))->base.u.bits .lang_flag_3) \ |
1010 | (TREE_NOT_CHECK2 (NODE, TREE_VEC, SSA_NAME)(tree_not_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1010, __FUNCTION__, (TREE_VEC), (SSA_NAME)))->base.u.bits.lang_flag_3) |
1011 | #define TREE_LANG_FLAG_4(NODE)((tree_not_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1011, __FUNCTION__, (TREE_VEC), (SSA_NAME)))->base.u.bits .lang_flag_4) \ |
1012 | (TREE_NOT_CHECK2 (NODE, TREE_VEC, SSA_NAME)(tree_not_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1012, __FUNCTION__, (TREE_VEC), (SSA_NAME)))->base.u.bits.lang_flag_4) |
1013 | #define TREE_LANG_FLAG_5(NODE)((tree_not_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1013, __FUNCTION__, (TREE_VEC), (SSA_NAME)))->base.u.bits .lang_flag_5) \ |
1014 | (TREE_NOT_CHECK2 (NODE, TREE_VEC, SSA_NAME)(tree_not_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1014, __FUNCTION__, (TREE_VEC), (SSA_NAME)))->base.u.bits.lang_flag_5) |
1015 | #define TREE_LANG_FLAG_6(NODE)((tree_not_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1015, __FUNCTION__, (TREE_VEC), (SSA_NAME)))->base.u.bits .lang_flag_6) \ |
1016 | (TREE_NOT_CHECK2 (NODE, TREE_VEC, SSA_NAME)(tree_not_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1016, __FUNCTION__, (TREE_VEC), (SSA_NAME)))->base.u.bits.lang_flag_6) |
1017 | |
1018 | /* Define additional fields and accessors for nodes representing constants. */ |
1019 | |
1020 | #define TREE_INT_CST_NUNITS(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1020, __FUNCTION__, (INTEGER_CST)))->base.u.int_length.unextended ) \ |
1021 | (INTEGER_CST_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1021, __FUNCTION__, (INTEGER_CST)))->base.u.int_length.unextended) |
1022 | #define TREE_INT_CST_EXT_NUNITS(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1022, __FUNCTION__, (INTEGER_CST)))->base.u.int_length.extended ) \ |
1023 | (INTEGER_CST_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1023, __FUNCTION__, (INTEGER_CST)))->base.u.int_length.extended) |
1024 | #define TREE_INT_CST_OFFSET_NUNITS(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1024, __FUNCTION__, (INTEGER_CST)))->base.u.int_length.offset ) \ |
1025 | (INTEGER_CST_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1025, __FUNCTION__, (INTEGER_CST)))->base.u.int_length.offset) |
1026 | #define TREE_INT_CST_ELT(NODE, I)(*tree_int_cst_elt_check ((NODE), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1026, __FUNCTION__)) TREE_INT_CST_ELT_CHECK (NODE, I)(*tree_int_cst_elt_check ((NODE), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1026, __FUNCTION__)) |
1027 | #define TREE_INT_CST_LOW(NODE)((unsigned long) (*tree_int_cst_elt_check ((NODE), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1027, __FUNCTION__))) \ |
1028 | ((unsigned HOST_WIDE_INTlong) TREE_INT_CST_ELT (NODE, 0)(*tree_int_cst_elt_check ((NODE), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1028, __FUNCTION__))) |
1029 | |
1030 | /* Return true if NODE is a POLY_INT_CST. This is only ever true on |
1031 | targets with variable-sized modes. */ |
1032 | #define POLY_INT_CST_P(NODE)(1 > 1 && ((enum tree_code) (NODE)->base.code) == POLY_INT_CST) \ |
1033 | (NUM_POLY_INT_COEFFS1 > 1 && TREE_CODE (NODE)((enum tree_code) (NODE)->base.code) == POLY_INT_CST) |
1034 | |
1035 | /* In a POLY_INT_CST node. */ |
1036 | #define POLY_INT_CST_COEFF(NODE, I)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1036, __FUNCTION__, (POLY_INT_CST)))->poly_int_cst.coeffs [I]) \ |
1037 | (POLY_INT_CST_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1037, __FUNCTION__, (POLY_INT_CST)))->poly_int_cst.coeffs[I]) |
1038 | |
1039 | #define TREE_REAL_CST_PTR(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1039, __FUNCTION__, (REAL_CST)))->real_cst.real_cst_ptr) (REAL_CST_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1039, __FUNCTION__, (REAL_CST)))->real_cst.real_cst_ptr) |
1040 | #define TREE_REAL_CST(NODE)(*((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1040, __FUNCTION__, (REAL_CST)))->real_cst.real_cst_ptr) ) (*TREE_REAL_CST_PTR (NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1040, __FUNCTION__, (REAL_CST)))->real_cst.real_cst_ptr)) |
1041 | |
1042 | #define TREE_FIXED_CST_PTR(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1042, __FUNCTION__, (FIXED_CST)))->fixed_cst.fixed_cst_ptr ) \ |
1043 | (FIXED_CST_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1043, __FUNCTION__, (FIXED_CST)))->fixed_cst.fixed_cst_ptr) |
1044 | #define TREE_FIXED_CST(NODE)(*((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1044, __FUNCTION__, (FIXED_CST)))->fixed_cst.fixed_cst_ptr )) (*TREE_FIXED_CST_PTR (NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1044, __FUNCTION__, (FIXED_CST)))->fixed_cst.fixed_cst_ptr )) |
1045 | |
1046 | /* In a STRING_CST */ |
1047 | /* In C terms, this is sizeof, not strlen. */ |
1048 | #define TREE_STRING_LENGTH(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1048, __FUNCTION__, (STRING_CST)))->string.length) (STRING_CST_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1048, __FUNCTION__, (STRING_CST)))->string.length) |
1049 | #define TREE_STRING_POINTER(NODE)((const char *)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1049, __FUNCTION__, (STRING_CST)))->string.str)) \ |
1050 | ((const char *)(STRING_CST_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1050, __FUNCTION__, (STRING_CST)))->string.str)) |
1051 | |
1052 | /* In a COMPLEX_CST node. */ |
1053 | #define TREE_REALPART(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1053, __FUNCTION__, (COMPLEX_CST)))->complex.real) (COMPLEX_CST_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1053, __FUNCTION__, (COMPLEX_CST)))->complex.real) |
1054 | #define TREE_IMAGPART(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1054, __FUNCTION__, (COMPLEX_CST)))->complex.imag) (COMPLEX_CST_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1054, __FUNCTION__, (COMPLEX_CST)))->complex.imag) |
1055 | |
1056 | /* In a VECTOR_CST node. See generic.texi for details. */ |
1057 | #define VECTOR_CST_NELTS(NODE)(TYPE_VECTOR_SUBPARTS (((contains_struct_check ((NODE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1057, __FUNCTION__))->typed.type))) (TYPE_VECTOR_SUBPARTS (TREE_TYPE (NODE)((contains_struct_check ((NODE), (TS_TYPED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1057, __FUNCTION__))->typed.type))) |
1058 | #define VECTOR_CST_ELT(NODE,IDX)vector_cst_elt (NODE, IDX) vector_cst_elt (NODE, IDX) |
1059 | |
1060 | #define VECTOR_CST_LOG2_NPATTERNS(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1060, __FUNCTION__, (VECTOR_CST)))->base.u.vector_cst.log2_npatterns ) \ |
1061 | (VECTOR_CST_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1061, __FUNCTION__, (VECTOR_CST)))->base.u.vector_cst.log2_npatterns) |
1062 | #define VECTOR_CST_NPATTERNS(NODE)(1U << ((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1062, __FUNCTION__, (VECTOR_CST)))->base.u.vector_cst.log2_npatterns )) \ |
1063 | (1U << VECTOR_CST_LOG2_NPATTERNS (NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1063, __FUNCTION__, (VECTOR_CST)))->base.u.vector_cst.log2_npatterns )) |
1064 | #define VECTOR_CST_NELTS_PER_PATTERN(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1064, __FUNCTION__, (VECTOR_CST)))->base.u.vector_cst.nelts_per_pattern ) \ |
1065 | (VECTOR_CST_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1065, __FUNCTION__, (VECTOR_CST)))->base.u.vector_cst.nelts_per_pattern) |
1066 | #define VECTOR_CST_DUPLICATE_P(NODE)(((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1066, __FUNCTION__, (VECTOR_CST)))->base.u.vector_cst.nelts_per_pattern ) == 1) \ |
1067 | (VECTOR_CST_NELTS_PER_PATTERN (NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1067, __FUNCTION__, (VECTOR_CST)))->base.u.vector_cst.nelts_per_pattern ) == 1) |
1068 | #define VECTOR_CST_STEPPED_P(NODE)(((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1068, __FUNCTION__, (VECTOR_CST)))->base.u.vector_cst.nelts_per_pattern ) == 3) \ |
1069 | (VECTOR_CST_NELTS_PER_PATTERN (NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1069, __FUNCTION__, (VECTOR_CST)))->base.u.vector_cst.nelts_per_pattern ) == 3) |
1070 | #define VECTOR_CST_ENCODED_ELTS(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1070, __FUNCTION__, (VECTOR_CST)))->vector.elts) \ |
1071 | (VECTOR_CST_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1071, __FUNCTION__, (VECTOR_CST)))->vector.elts) |
1072 | #define VECTOR_CST_ENCODED_ELT(NODE, ELT)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1072, __FUNCTION__, (VECTOR_CST)))->vector.elts[ELT]) \ |
1073 | (VECTOR_CST_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1073, __FUNCTION__, (VECTOR_CST)))->vector.elts[ELT]) |
1074 | |
1075 | /* Define fields and accessors for some special-purpose tree nodes. */ |
1076 | |
1077 | #define IDENTIFIER_LENGTH(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1077, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.len ) \ |
1078 | (IDENTIFIER_NODE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1078, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.len) |
1079 | #define IDENTIFIER_POINTER(NODE)((const char *) (tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1079, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str ) \ |
1080 | ((const char *) IDENTIFIER_NODE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1080, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.str) |
1081 | #define IDENTIFIER_HASH_VALUE(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1081, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.hash_value ) \ |
1082 | (IDENTIFIER_NODE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1082, __FUNCTION__, (IDENTIFIER_NODE)))->identifier.id.hash_value) |
1083 | |
1084 | /* Translate a hash table identifier pointer to a tree_identifier |
1085 | pointer, and vice versa. */ |
1086 | |
1087 | #define HT_IDENT_TO_GCC_IDENT(NODE)((tree) ((char *) (NODE) - sizeof (struct tree_common))) \ |
1088 | ((tree) ((char *) (NODE) - sizeof (struct tree_common))) |
1089 | #define GCC_IDENT_TO_HT_IDENT(NODE)(&((struct tree_identifier *) (NODE))->id) (&((struct tree_identifier *) (NODE))->id) |
1090 | |
1091 | /* In a TREE_LIST node. */ |
1092 | #define TREE_PURPOSE(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1092, __FUNCTION__, (TREE_LIST)))->list.purpose) (TREE_LIST_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1092, __FUNCTION__, (TREE_LIST)))->list.purpose) |
1093 | #define TREE_VALUE(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1093, __FUNCTION__, (TREE_LIST)))->list.value) (TREE_LIST_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1093, __FUNCTION__, (TREE_LIST)))->list.value) |
1094 | |
1095 | /* In a TREE_VEC node. */ |
1096 | #define TREE_VEC_LENGTH(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1096, __FUNCTION__, (TREE_VEC)))->base.u.length) (TREE_VEC_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1096, __FUNCTION__, (TREE_VEC)))->base.u.length) |
1097 | #define TREE_VEC_END(NODE)((void) (tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1097, __FUNCTION__, (TREE_VEC))), &((NODE)->vec.a[(NODE )->vec.base.u.length])) \ |
1098 | ((void) TREE_VEC_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1098, __FUNCTION__, (TREE_VEC))), &((NODE)->vec.a[(NODE)->vec.base.u.length])) |
1099 | |
1100 | #define TREE_VEC_ELT(NODE,I)(*((const_cast<tree *> (tree_vec_elt_check ((NODE), (I) , "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1100, __FUNCTION__))))) TREE_VEC_ELT_CHECK (NODE, I)(*((const_cast<tree *> (tree_vec_elt_check ((NODE), (I) , "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1100, __FUNCTION__))))) |
1101 | |
1102 | /* In a CONSTRUCTOR node. */ |
1103 | #define CONSTRUCTOR_ELTS(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1103, __FUNCTION__, (CONSTRUCTOR)))->constructor.elts) (CONSTRUCTOR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1103, __FUNCTION__, (CONSTRUCTOR)))->constructor.elts) |
1104 | #define CONSTRUCTOR_ELT(NODE,IDX)(&(*((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1104, __FUNCTION__, (CONSTRUCTOR)))->constructor.elts))[ IDX]) \ |
1105 | (&(*CONSTRUCTOR_ELTS (NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1105, __FUNCTION__, (CONSTRUCTOR)))->constructor.elts))[IDX]) |
1106 | #define CONSTRUCTOR_NELTS(NODE)(vec_safe_length (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1106, __FUNCTION__, (CONSTRUCTOR)))->constructor.elts))) \ |
1107 | (vec_safe_length (CONSTRUCTOR_ELTS (NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1107, __FUNCTION__, (CONSTRUCTOR)))->constructor.elts))) |
1108 | #define CONSTRUCTOR_NO_CLEARING(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1108, __FUNCTION__, (CONSTRUCTOR)))->base.public_flag) \ |
1109 | (CONSTRUCTOR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1109, __FUNCTION__, (CONSTRUCTOR)))->base.public_flag) |
1110 | |
1111 | /* Iterate through the vector V of CONSTRUCTOR_ELT elements, yielding the |
1112 | value of each element (stored within VAL). IX must be a scratch variable |
1113 | of unsigned integer type. */ |
1114 | #define FOR_EACH_CONSTRUCTOR_VALUE(V, IX, VAL)for (IX = 0; (IX >= vec_safe_length (V)) ? false : ((VAL = (*(V))[IX].value), true); (IX)++) \ |
1115 | for (IX = 0; (IX >= vec_safe_length (V)) \ |
1116 | ? false \ |
1117 | : ((VAL = (*(V))[IX].value), \ |
1118 | true); \ |
1119 | (IX)++) |
1120 | |
1121 | /* Iterate through the vector V of CONSTRUCTOR_ELT elements, yielding both |
1122 | the value of each element (stored within VAL) and its index (stored |
1123 | within INDEX). IX must be a scratch variable of unsigned integer type. */ |
1124 | #define FOR_EACH_CONSTRUCTOR_ELT(V, IX, INDEX, VAL)for (IX = 0; (IX >= vec_safe_length (V)) ? false : (((void ) (VAL = (*V)[IX].value)), (INDEX = (*V)[IX].index), true); ( IX)++) \ |
1125 | for (IX = 0; (IX >= vec_safe_length (V)) \ |
1126 | ? false \ |
1127 | : (((void) (VAL = (*V)[IX].value)), \ |
1128 | (INDEX = (*V)[IX].index), \ |
1129 | true); \ |
1130 | (IX)++) |
1131 | |
1132 | /* Append a new constructor element to V, with the specified INDEX and VAL. */ |
1133 | #define CONSTRUCTOR_APPEND_ELT(V, INDEX, VALUE)do { constructor_elt _ce___ = {INDEX, VALUE}; vec_safe_push ( (V), _ce___); } while (0) \ |
1134 | do { \ |
1135 | constructor_elt _ce___ = {INDEX, VALUE}; \ |
1136 | vec_safe_push ((V), _ce___); \ |
1137 | } while (0) |
1138 | |
1139 | /* True if NODE, a FIELD_DECL, is to be processed as a bitfield for |
1140 | constructor output purposes. */ |
1141 | #define CONSTRUCTOR_BITFIELD_P(NODE)(((tree_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1141, __FUNCTION__, (FIELD_DECL)))), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1141, __FUNCTION__, (FIELD_DECL)))->decl_common.decl_flag_1 ) && ((contains_struct_check ((NODE), (TS_DECL_COMMON ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1141, __FUNCTION__))->decl_common.mode) != ((void) 0, E_BLKmode )) \ |
1142 | (DECL_BIT_FIELD (FIELD_DECL_CHECK (NODE))((tree_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1142, __FUNCTION__, (FIELD_DECL)))), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1142, __FUNCTION__, (FIELD_DECL)))->decl_common.decl_flag_1 ) && DECL_MODE (NODE)((contains_struct_check ((NODE), (TS_DECL_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1142, __FUNCTION__))->decl_common.mode) != BLKmode((void) 0, E_BLKmode)) |
1143 | |
1144 | /* True if NODE is a clobber right hand side, an expression of indeterminate |
1145 | value that clobbers the LHS in a copy instruction. We use a volatile |
1146 | empty CONSTRUCTOR for this, as it matches most of the necessary semantic. |
1147 | In particular the volatile flag causes us to not prematurely remove |
1148 | such clobber instructions. */ |
1149 | #define TREE_CLOBBER_P(NODE)(((enum tree_code) (NODE)->base.code) == CONSTRUCTOR && ((NODE)->base.volatile_flag)) \ |
1150 | (TREE_CODE (NODE)((enum tree_code) (NODE)->base.code) == CONSTRUCTOR && TREE_THIS_VOLATILE (NODE)((NODE)->base.volatile_flag)) |
1151 | |
1152 | /* Define fields and accessors for some nodes that represent expressions. */ |
1153 | |
1154 | /* Nonzero if NODE is an empty statement (NOP_EXPR <0>). */ |
1155 | #define IS_EMPTY_STMT(NODE)(((enum tree_code) (NODE)->base.code) == NOP_EXPR && (((enum tree_code) (((contains_struct_check ((NODE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1155, __FUNCTION__))->typed.type))->base.code) == VOID_TYPE ) && integer_zerop ((*((const_cast<tree*> (tree_operand_check ((NODE), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1155, __FUNCTION__))))))) (TREE_CODE (NODE)((enum tree_code) (NODE)->base.code) == NOP_EXPR \ |
1156 | && VOID_TYPE_P (TREE_TYPE (NODE))(((enum tree_code) (((contains_struct_check ((NODE), (TS_TYPED ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1156, __FUNCTION__))->typed.type))->base.code) == VOID_TYPE ) \ |
1157 | && integer_zerop (TREE_OPERAND (NODE, 0)(*((const_cast<tree*> (tree_operand_check ((NODE), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1157, __FUNCTION__))))))) |
1158 | |
1159 | /* In ordinary expression nodes. */ |
1160 | #define TREE_OPERAND_LENGTH(NODE)tree_operand_length (NODE) tree_operand_length (NODE) |
1161 | #define TREE_OPERAND(NODE, I)(*((const_cast<tree*> (tree_operand_check ((NODE), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1161, __FUNCTION__))))) TREE_OPERAND_CHECK (NODE, I)(*((const_cast<tree*> (tree_operand_check ((NODE), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1161, __FUNCTION__))))) |
1162 | |
1163 | /* In a tcc_vl_exp node, operand 0 is an INT_CST node holding the operand |
1164 | length. Its value includes the length operand itself; that is, |
1165 | the minimum valid length is 1. |
1166 | Note that we have to bypass the use of TREE_OPERAND to access |
1167 | that field to avoid infinite recursion in expanding the macros. */ |
1168 | #define VL_EXP_OPERAND_LENGTH(NODE)((int)((unsigned long) (*tree_int_cst_elt_check (((tree_class_check ((NODE), (tcc_vl_exp), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1168, __FUNCTION__))->exp.operands[0]), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1168, __FUNCTION__)))) \ |
1169 | ((int)TREE_INT_CST_LOW (VL_EXP_CHECK (NODE)->exp.operands[0])((unsigned long) (*tree_int_cst_elt_check (((tree_class_check ((NODE), (tcc_vl_exp), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1169, __FUNCTION__))->exp.operands[0]), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1169, __FUNCTION__)))) |
1170 | |
1171 | /* Nonzero if gimple_debug_nonbind_marker_p() may possibly hold. */ |
1172 | #define MAY_HAVE_DEBUG_MARKER_STMTSdebug_nonbind_markers_p debug_nonbind_markers_p |
1173 | /* Nonzero if gimple_debug_bind_p() (and thus |
1174 | gimple_debug_source_bind_p()) may possibly hold. */ |
1175 | #define MAY_HAVE_DEBUG_BIND_STMTSflag_var_tracking_assignments flag_var_tracking_assignments |
1176 | /* Nonzero if is_gimple_debug() may possibly hold. */ |
1177 | #define MAY_HAVE_DEBUG_STMTS(debug_nonbind_markers_p || flag_var_tracking_assignments) \ |
1178 | (MAY_HAVE_DEBUG_MARKER_STMTSdebug_nonbind_markers_p || MAY_HAVE_DEBUG_BIND_STMTSflag_var_tracking_assignments) |
1179 | |
1180 | /* In a LOOP_EXPR node. */ |
1181 | #define LOOP_EXPR_BODY(NODE)(*(tree_operand_check_code ((NODE), (LOOP_EXPR), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1181, __FUNCTION__))) TREE_OPERAND_CHECK_CODE (NODE, LOOP_EXPR, 0)(*(tree_operand_check_code ((NODE), (LOOP_EXPR), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1181, __FUNCTION__))) |
1182 | |
1183 | /* The source location of this expression. Non-tree_exp nodes such as |
1184 | decls and constants can be shared among multiple locations, so |
1185 | return nothing. */ |
1186 | #define EXPR_LOCATION(NODE)((((NODE)) && ((tree_code_type[(int) (((enum tree_code ) ((NODE))->base.code))]) >= tcc_reference && ( tree_code_type[(int) (((enum tree_code) ((NODE))->base.code ))]) <= tcc_expression)) ? (NODE)->exp.locus : ((location_t ) 0)) \ |
1187 | (CAN_HAVE_LOCATION_P ((NODE))(((NODE)) && ((tree_code_type[(int) (((enum tree_code ) ((NODE))->base.code))]) >= tcc_reference && ( tree_code_type[(int) (((enum tree_code) ((NODE))->base.code ))]) <= tcc_expression)) ? (NODE)->exp.locus : UNKNOWN_LOCATION((location_t) 0)) |
1188 | #define SET_EXPR_LOCATION(NODE, LOCUS)(expr_check (((NODE)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1188, __FUNCTION__))->exp.locus = (LOCUS) EXPR_CHECK ((NODE))(expr_check (((NODE)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1188, __FUNCTION__))->exp.locus = (LOCUS) |
1189 | #define EXPR_HAS_LOCATION(NODE)(((IS_ADHOC_LOC (((((NODE)) && ((tree_code_type[(int) (((enum tree_code) ((NODE))->base.code))]) >= tcc_reference && (tree_code_type[(int) (((enum tree_code) ((NODE)) ->base.code))]) <= tcc_expression)) ? (NODE)->exp.locus : ((location_t) 0)))) ? get_location_from_adhoc_loc (line_table , ((((NODE)) && ((tree_code_type[(int) (((enum tree_code ) ((NODE))->base.code))]) >= tcc_reference && ( tree_code_type[(int) (((enum tree_code) ((NODE))->base.code ))]) <= tcc_expression)) ? (NODE)->exp.locus : ((location_t ) 0))) : (((((NODE)) && ((tree_code_type[(int) (((enum tree_code) ((NODE))->base.code))]) >= tcc_reference && (tree_code_type[(int) (((enum tree_code) ((NODE))->base.code ))]) <= tcc_expression)) ? (NODE)->exp.locus : ((location_t ) 0)))) != ((location_t) 0)) (LOCATION_LOCUS (EXPR_LOCATION (NODE))((IS_ADHOC_LOC (((((NODE)) && ((tree_code_type[(int) ( ((enum tree_code) ((NODE))->base.code))]) >= tcc_reference && (tree_code_type[(int) (((enum tree_code) ((NODE)) ->base.code))]) <= tcc_expression)) ? (NODE)->exp.locus : ((location_t) 0)))) ? get_location_from_adhoc_loc (line_table , ((((NODE)) && ((tree_code_type[(int) (((enum tree_code ) ((NODE))->base.code))]) >= tcc_reference && ( tree_code_type[(int) (((enum tree_code) ((NODE))->base.code ))]) <= tcc_expression)) ? (NODE)->exp.locus : ((location_t ) 0))) : (((((NODE)) && ((tree_code_type[(int) (((enum tree_code) ((NODE))->base.code))]) >= tcc_reference && (tree_code_type[(int) (((enum tree_code) ((NODE))->base.code ))]) <= tcc_expression)) ? (NODE)->exp.locus : ((location_t ) 0)))) \ |
1190 | != UNKNOWN_LOCATION((location_t) 0)) |
1191 | /* The location to be used in a diagnostic about this expression. Do not |
1192 | use this macro if the location will be assigned to other expressions. */ |
1193 | #define EXPR_LOC_OR_LOC(NODE, LOCUS)((((IS_ADHOC_LOC (((((NODE)) && ((tree_code_type[(int ) (((enum tree_code) ((NODE))->base.code))]) >= tcc_reference && (tree_code_type[(int) (((enum tree_code) ((NODE)) ->base.code))]) <= tcc_expression)) ? (NODE)->exp.locus : ((location_t) 0)))) ? get_location_from_adhoc_loc (line_table , ((((NODE)) && ((tree_code_type[(int) (((enum tree_code ) ((NODE))->base.code))]) >= tcc_reference && ( tree_code_type[(int) (((enum tree_code) ((NODE))->base.code ))]) <= tcc_expression)) ? (NODE)->exp.locus : ((location_t ) 0))) : (((((NODE)) && ((tree_code_type[(int) (((enum tree_code) ((NODE))->base.code))]) >= tcc_reference && (tree_code_type[(int) (((enum tree_code) ((NODE))->base.code ))]) <= tcc_expression)) ? (NODE)->exp.locus : ((location_t ) 0)))) != ((location_t) 0)) ? (NODE)->exp.locus : (LOCUS) ) (EXPR_HAS_LOCATION (NODE)(((IS_ADHOC_LOC (((((NODE)) && ((tree_code_type[(int) (((enum tree_code) ((NODE))->base.code))]) >= tcc_reference && (tree_code_type[(int) (((enum tree_code) ((NODE)) ->base.code))]) <= tcc_expression)) ? (NODE)->exp.locus : ((location_t) 0)))) ? get_location_from_adhoc_loc (line_table , ((((NODE)) && ((tree_code_type[(int) (((enum tree_code ) ((NODE))->base.code))]) >= tcc_reference && ( tree_code_type[(int) (((enum tree_code) ((NODE))->base.code ))]) <= tcc_expression)) ? (NODE)->exp.locus : ((location_t ) 0))) : (((((NODE)) && ((tree_code_type[(int) (((enum tree_code) ((NODE))->base.code))]) >= tcc_reference && (tree_code_type[(int) (((enum tree_code) ((NODE))->base.code ))]) <= tcc_expression)) ? (NODE)->exp.locus : ((location_t ) 0)))) != ((location_t) 0)) \ |
1194 | ? (NODE)->exp.locus : (LOCUS)) |
1195 | #define EXPR_FILENAME(NODE)((expand_location ((expr_check (((NODE)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1195, __FUNCTION__))->exp.locus)).file) LOCATION_FILE (EXPR_CHECK ((NODE))->exp.locus)((expand_location ((expr_check (((NODE)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1195, __FUNCTION__))->exp.locus)).file) |
1196 | #define EXPR_LINENO(NODE)((expand_location ((expr_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1196, __FUNCTION__))->exp.locus)).line) LOCATION_LINE (EXPR_CHECK (NODE)->exp.locus)((expand_location ((expr_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1196, __FUNCTION__))->exp.locus)).line) |
1197 | |
1198 | #define CAN_HAVE_RANGE_P(NODE)(((NODE) && ((tree_code_type[(int) (((enum tree_code) (NODE)->base.code))]) >= tcc_reference && (tree_code_type [(int) (((enum tree_code) (NODE)->base.code))]) <= tcc_expression ))) (CAN_HAVE_LOCATION_P (NODE)((NODE) && ((tree_code_type[(int) (((enum tree_code) ( NODE)->base.code))]) >= tcc_reference && (tree_code_type [(int) (((enum tree_code) (NODE)->base.code))]) <= tcc_expression ))) |
1199 | #define EXPR_LOCATION_RANGE(NODE)(get_expr_source_range ((expr_check (((NODE)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1199, __FUNCTION__)))) (get_expr_source_range (EXPR_CHECK ((NODE))(expr_check (((NODE)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1199, __FUNCTION__)))) |
1200 | |
1201 | #define EXPR_HAS_RANGE(NODE)((((NODE) && ((tree_code_type[(int) (((enum tree_code ) (NODE)->base.code))]) >= tcc_reference && (tree_code_type [(int) (((enum tree_code) (NODE)->base.code))]) <= tcc_expression ))) ? (get_expr_source_range ((expr_check (((NODE)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1201, __FUNCTION__)))).m_start != ((location_t) 0) : false) \ |
1202 | (CAN_HAVE_RANGE_P (NODE)(((NODE) && ((tree_code_type[(int) (((enum tree_code) (NODE)->base.code))]) >= tcc_reference && (tree_code_type [(int) (((enum tree_code) (NODE)->base.code))]) <= tcc_expression ))) \ |
1203 | ? EXPR_LOCATION_RANGE (NODE)(get_expr_source_range ((expr_check (((NODE)), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1203, __FUNCTION__)))).m_start != UNKNOWN_LOCATION((location_t) 0) \ |
1204 | : false) |
1205 | |
1206 | /* True if a tree is an expression or statement that can have a |
1207 | location. */ |
1208 | #define CAN_HAVE_LOCATION_P(NODE)((NODE) && ((tree_code_type[(int) (((enum tree_code) ( NODE)->base.code))]) >= tcc_reference && (tree_code_type [(int) (((enum tree_code) (NODE)->base.code))]) <= tcc_expression )) ((NODE) && EXPR_P (NODE)((tree_code_type[(int) (((enum tree_code) (NODE)->base.code ))]) >= tcc_reference && (tree_code_type[(int) ((( enum tree_code) (NODE)->base.code))]) <= tcc_expression )) |
1209 | |
1210 | static inline source_range |
1211 | get_expr_source_range (tree expr) |
1212 | { |
1213 | location_t loc = EXPR_LOCATION (expr)((((expr)) && ((tree_code_type[(int) (((enum tree_code ) ((expr))->base.code))]) >= tcc_reference && ( tree_code_type[(int) (((enum tree_code) ((expr))->base.code ))]) <= tcc_expression)) ? (expr)->exp.locus : ((location_t ) 0)); |
1214 | return get_range_from_loc (line_table, loc); |
1215 | } |
1216 | |
1217 | extern void protected_set_expr_location (tree, location_t); |
1218 | extern void protected_set_expr_location_if_unset (tree, location_t); |
1219 | |
1220 | WARN_UNUSED_RESULT__attribute__ ((__warn_unused_result__)) extern tree maybe_wrap_with_location (tree, location_t); |
1221 | |
1222 | extern int suppress_location_wrappers; |
1223 | |
1224 | /* A class for suppressing the creation of location wrappers. |
1225 | Location wrappers will not be created during the lifetime |
1226 | of an instance of this class. */ |
1227 | |
1228 | class auto_suppress_location_wrappers |
1229 | { |
1230 | public: |
1231 | auto_suppress_location_wrappers () { ++suppress_location_wrappers; } |
1232 | ~auto_suppress_location_wrappers () { --suppress_location_wrappers; } |
1233 | }; |
1234 | |
1235 | /* In a TARGET_EXPR node. */ |
1236 | #define TARGET_EXPR_SLOT(NODE)(*(tree_operand_check_code ((NODE), (TARGET_EXPR), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1236, __FUNCTION__))) TREE_OPERAND_CHECK_CODE (NODE, TARGET_EXPR, 0)(*(tree_operand_check_code ((NODE), (TARGET_EXPR), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1236, __FUNCTION__))) |
1237 | #define TARGET_EXPR_INITIAL(NODE)(*(tree_operand_check_code ((NODE), (TARGET_EXPR), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1237, __FUNCTION__))) TREE_OPERAND_CHECK_CODE (NODE, TARGET_EXPR, 1)(*(tree_operand_check_code ((NODE), (TARGET_EXPR), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1237, __FUNCTION__))) |
1238 | #define TARGET_EXPR_CLEANUP(NODE)(*(tree_operand_check_code ((NODE), (TARGET_EXPR), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1238, __FUNCTION__))) TREE_OPERAND_CHECK_CODE (NODE, TARGET_EXPR, 2)(*(tree_operand_check_code ((NODE), (TARGET_EXPR), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1238, __FUNCTION__))) |
1239 | /* Don't elide the initialization of TARGET_EXPR_SLOT for this TARGET_EXPR |
1240 | on rhs of MODIFY_EXPR. */ |
1241 | #define TARGET_EXPR_NO_ELIDE(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1241, __FUNCTION__, (TARGET_EXPR)))->base.private_flag) (TARGET_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1241, __FUNCTION__, (TARGET_EXPR)))->base.private_flag) |
1242 | |
1243 | /* DECL_EXPR accessor. This gives access to the DECL associated with |
1244 | the given declaration statement. */ |
1245 | #define DECL_EXPR_DECL(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1245, __FUNCTION__, (DECL_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1245, __FUNCTION__))))) TREE_OPERAND (DECL_EXPR_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1245, __FUNCTION__, (DECL_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1245, __FUNCTION__))))) |
1246 | |
1247 | #define EXIT_EXPR_COND(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1247, __FUNCTION__, (EXIT_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1247, __FUNCTION__))))) TREE_OPERAND (EXIT_EXPR_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1247, __FUNCTION__, (EXIT_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1247, __FUNCTION__))))) |
1248 | |
1249 | /* COMPOUND_LITERAL_EXPR accessors. */ |
1250 | #define COMPOUND_LITERAL_EXPR_DECL_EXPR(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1250, __FUNCTION__, (COMPOUND_LITERAL_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1250, __FUNCTION__))))) \ |
1251 | TREE_OPERAND (COMPOUND_LITERAL_EXPR_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1251, __FUNCTION__, (COMPOUND_LITERAL_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1251, __FUNCTION__))))) |
1252 | #define COMPOUND_LITERAL_EXPR_DECL(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check (((*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1252, __FUNCTION__, (COMPOUND_LITERAL_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1252, __FUNCTION__)))))), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1252, __FUNCTION__, (DECL_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1252, __FUNCTION__))))) \ |
1253 | DECL_EXPR_DECL (COMPOUND_LITERAL_EXPR_DECL_EXPR (NODE))(*((const_cast<tree*> (tree_operand_check (((tree_check (((*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1253, __FUNCTION__, (COMPOUND_LITERAL_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1253, __FUNCTION__)))))), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1253, __FUNCTION__, (DECL_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1253, __FUNCTION__))))) |
1254 | |
1255 | /* SWITCH_EXPR accessors. These give access to the condition and body. */ |
1256 | #define SWITCH_COND(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1256, __FUNCTION__, (SWITCH_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1256, __FUNCTION__))))) TREE_OPERAND (SWITCH_EXPR_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1256, __FUNCTION__, (SWITCH_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1256, __FUNCTION__))))) |
1257 | #define SWITCH_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1257, __FUNCTION__, (SWITCH_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1257, __FUNCTION__))))) TREE_OPERAND (SWITCH_EXPR_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1257, __FUNCTION__, (SWITCH_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1257, __FUNCTION__))))) |
1258 | /* True if there are case labels for all possible values of SWITCH_COND, either |
1259 | because there is a default: case label or because the case label ranges cover |
1260 | all values. */ |
1261 | #define SWITCH_ALL_CASES_P(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1261, __FUNCTION__, (SWITCH_EXPR)))->base.private_flag) (SWITCH_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1261, __FUNCTION__, (SWITCH_EXPR)))->base.private_flag) |
1262 | |
1263 | /* CASE_LABEL_EXPR accessors. These give access to the high and low values |
1264 | of a case label, respectively. */ |
1265 | #define CASE_LOW(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1265, __FUNCTION__, (CASE_LABEL_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1265, __FUNCTION__))))) TREE_OPERAND (CASE_LABEL_EXPR_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1265, __FUNCTION__, (CASE_LABEL_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1265, __FUNCTION__))))) |
1266 | #define CASE_HIGH(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1266, __FUNCTION__, (CASE_LABEL_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1266, __FUNCTION__))))) TREE_OPERAND (CASE_LABEL_EXPR_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1266, __FUNCTION__, (CASE_LABEL_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1266, __FUNCTION__))))) |
1267 | #define CASE_LABEL(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1267, __FUNCTION__, (CASE_LABEL_EXPR)))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1267, __FUNCTION__))))) TREE_OPERAND (CASE_LABEL_EXPR_CHECK (NODE), 2)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1267, __FUNCTION__, (CASE_LABEL_EXPR)))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1267, __FUNCTION__))))) |
1268 | #define CASE_CHAIN(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1268, __FUNCTION__, (CASE_LABEL_EXPR)))), (3), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1268, __FUNCTION__))))) TREE_OPERAND (CASE_LABEL_EXPR_CHECK (NODE), 3)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1268, __FUNCTION__, (CASE_LABEL_EXPR)))), (3), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1268, __FUNCTION__))))) |
1269 | |
1270 | /* The operands of a TARGET_MEM_REF. Operands 0 and 1 have to match |
1271 | corresponding MEM_REF operands. */ |
1272 | #define TMR_BASE(NODE)((*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1272, __FUNCTION__, (TARGET_MEM_REF)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1272, __FUNCTION__)))))) (TREE_OPERAND (TARGET_MEM_REF_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1272, __FUNCTION__, (TARGET_MEM_REF)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1272, __FUNCTION__)))))) |
1273 | #define TMR_OFFSET(NODE)((*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1273, __FUNCTION__, (TARGET_MEM_REF)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1273, __FUNCTION__)))))) (TREE_OPERAND (TARGET_MEM_REF_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1273, __FUNCTION__, (TARGET_MEM_REF)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1273, __FUNCTION__)))))) |
1274 | #define TMR_INDEX(NODE)((*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1274, __FUNCTION__, (TARGET_MEM_REF)))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1274, __FUNCTION__)))))) (TREE_OPERAND (TARGET_MEM_REF_CHECK (NODE), 2)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1274, __FUNCTION__, (TARGET_MEM_REF)))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1274, __FUNCTION__)))))) |
1275 | #define TMR_STEP(NODE)((*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1275, __FUNCTION__, (TARGET_MEM_REF)))), (3), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1275, __FUNCTION__)))))) (TREE_OPERAND (TARGET_MEM_REF_CHECK (NODE), 3)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1275, __FUNCTION__, (TARGET_MEM_REF)))), (3), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1275, __FUNCTION__)))))) |
1276 | #define TMR_INDEX2(NODE)((*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1276, __FUNCTION__, (TARGET_MEM_REF)))), (4), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1276, __FUNCTION__)))))) (TREE_OPERAND (TARGET_MEM_REF_CHECK (NODE), 4)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1276, __FUNCTION__, (TARGET_MEM_REF)))), (4), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1276, __FUNCTION__)))))) |
1277 | |
1278 | #define MR_DEPENDENCE_CLIQUE(NODE)((tree_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1278, __FUNCTION__, (MEM_REF), (TARGET_MEM_REF)))->base. u.dependence_info.clique) \ |
1279 | (TREE_CHECK2 (NODE, MEM_REF, TARGET_MEM_REF)(tree_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1279, __FUNCTION__, (MEM_REF), (TARGET_MEM_REF)))->base.u.dependence_info.clique) |
1280 | #define MR_DEPENDENCE_BASE(NODE)((tree_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1280, __FUNCTION__, (MEM_REF), (TARGET_MEM_REF)))->base. u.dependence_info.base) \ |
1281 | (TREE_CHECK2 (NODE, MEM_REF, TARGET_MEM_REF)(tree_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1281, __FUNCTION__, (MEM_REF), (TARGET_MEM_REF)))->base.u.dependence_info.base) |
1282 | |
1283 | /* The operands of a BIND_EXPR. */ |
1284 | #define BIND_EXPR_VARS(NODE)((*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1284, __FUNCTION__, (BIND_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1284, __FUNCTION__)))))) (TREE_OPERAND (BIND_EXPR_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1284, __FUNCTION__, (BIND_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1284, __FUNCTION__)))))) |
1285 | #define BIND_EXPR_BODY(NODE)((*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1285, __FUNCTION__, (BIND_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1285, __FUNCTION__)))))) (TREE_OPERAND (BIND_EXPR_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1285, __FUNCTION__, (BIND_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1285, __FUNCTION__)))))) |
1286 | #define BIND_EXPR_BLOCK(NODE)((*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1286, __FUNCTION__, (BIND_EXPR)))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1286, __FUNCTION__)))))) (TREE_OPERAND (BIND_EXPR_CHECK (NODE), 2)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1286, __FUNCTION__, (BIND_EXPR)))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1286, __FUNCTION__)))))) |
1287 | |
1288 | /* GOTO_EXPR accessor. This gives access to the label associated with |
1289 | a goto statement. */ |
1290 | #define GOTO_DESTINATION(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1290, __FUNCTION__, (GOTO_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1290, __FUNCTION__))))) TREE_OPERAND (GOTO_EXPR_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1290, __FUNCTION__, (GOTO_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1290, __FUNCTION__))))) |
1291 | |
1292 | /* ASM_EXPR accessors. ASM_STRING returns a STRING_CST for the |
1293 | instruction (e.g., "mov x, y"). ASM_OUTPUTS, ASM_INPUTS, and |
1294 | ASM_CLOBBERS represent the outputs, inputs, and clobbers for the |
1295 | statement. */ |
1296 | #define ASM_STRING(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1296, __FUNCTION__, (ASM_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1296, __FUNCTION__))))) TREE_OPERAND (ASM_EXPR_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1296, __FUNCTION__, (ASM_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1296, __FUNCTION__))))) |
1297 | #define ASM_OUTPUTS(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1297, __FUNCTION__, (ASM_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1297, __FUNCTION__))))) TREE_OPERAND (ASM_EXPR_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1297, __FUNCTION__, (ASM_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1297, __FUNCTION__))))) |
1298 | #define ASM_INPUTS(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1298, __FUNCTION__, (ASM_EXPR)))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1298, __FUNCTION__))))) TREE_OPERAND (ASM_EXPR_CHECK (NODE), 2)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1298, __FUNCTION__, (ASM_EXPR)))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1298, __FUNCTION__))))) |
1299 | #define ASM_CLOBBERS(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1299, __FUNCTION__, (ASM_EXPR)))), (3), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1299, __FUNCTION__))))) TREE_OPERAND (ASM_EXPR_CHECK (NODE), 3)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1299, __FUNCTION__, (ASM_EXPR)))), (3), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1299, __FUNCTION__))))) |
1300 | #define ASM_LABELS(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1300, __FUNCTION__, (ASM_EXPR)))), (4), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1300, __FUNCTION__))))) TREE_OPERAND (ASM_EXPR_CHECK (NODE), 4)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1300, __FUNCTION__, (ASM_EXPR)))), (4), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1300, __FUNCTION__))))) |
1301 | /* Nonzero if we want to create an ASM_INPUT instead of an |
1302 | ASM_OPERAND with no operands. */ |
1303 | #define ASM_INPUT_P(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1303, __FUNCTION__, (ASM_EXPR)))->base.static_flag) (ASM_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1303, __FUNCTION__, (ASM_EXPR)))->base.static_flag) |
1304 | #define ASM_VOLATILE_P(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1304, __FUNCTION__, (ASM_EXPR)))->base.public_flag) (ASM_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1304, __FUNCTION__, (ASM_EXPR)))->base.public_flag) |
1305 | /* Nonzero if we want to consider this asm as minimum length and cost |
1306 | for inlining decisions. */ |
1307 | #define ASM_INLINE_P(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1307, __FUNCTION__, (ASM_EXPR)))->base.protected_flag) (ASM_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1307, __FUNCTION__, (ASM_EXPR)))->base.protected_flag) |
1308 | |
1309 | /* COND_EXPR accessors. */ |
1310 | #define COND_EXPR_COND(NODE)((*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1310, __FUNCTION__, (COND_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1310, __FUNCTION__)))))) (TREE_OPERAND (COND_EXPR_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1310, __FUNCTION__, (COND_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1310, __FUNCTION__)))))) |
1311 | #define COND_EXPR_THEN(NODE)((*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1311, __FUNCTION__, (COND_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1311, __FUNCTION__)))))) (TREE_OPERAND (COND_EXPR_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1311, __FUNCTION__, (COND_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1311, __FUNCTION__)))))) |
1312 | #define COND_EXPR_ELSE(NODE)((*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1312, __FUNCTION__, (COND_EXPR)))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1312, __FUNCTION__)))))) (TREE_OPERAND (COND_EXPR_CHECK (NODE), 2)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1312, __FUNCTION__, (COND_EXPR)))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1312, __FUNCTION__)))))) |
1313 | |
1314 | /* Accessors for the chains of recurrences. */ |
1315 | #define CHREC_LEFT(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1315, __FUNCTION__, (POLYNOMIAL_CHREC)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1315, __FUNCTION__))))) TREE_OPERAND (POLYNOMIAL_CHREC_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1315, __FUNCTION__, (POLYNOMIAL_CHREC)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1315, __FUNCTION__))))) |
1316 | #define CHREC_RIGHT(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1316, __FUNCTION__, (POLYNOMIAL_CHREC)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1316, __FUNCTION__))))) TREE_OPERAND (POLYNOMIAL_CHREC_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1316, __FUNCTION__, (POLYNOMIAL_CHREC)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1316, __FUNCTION__))))) |
1317 | #define CHREC_VARIABLE(NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1317, __FUNCTION__, (POLYNOMIAL_CHREC)))->base.u.chrec_var POLYNOMIAL_CHREC_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1317, __FUNCTION__, (POLYNOMIAL_CHREC)))->base.u.chrec_var |
1318 | |
1319 | /* LABEL_EXPR accessor. This gives access to the label associated with |
1320 | the given label expression. */ |
1321 | #define LABEL_EXPR_LABEL(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1321, __FUNCTION__, (LABEL_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1321, __FUNCTION__))))) TREE_OPERAND (LABEL_EXPR_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1321, __FUNCTION__, (LABEL_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1321, __FUNCTION__))))) |
1322 | |
1323 | /* CATCH_EXPR accessors. */ |
1324 | #define CATCH_TYPES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1324, __FUNCTION__, (CATCH_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1324, __FUNCTION__))))) TREE_OPERAND (CATCH_EXPR_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1324, __FUNCTION__, (CATCH_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1324, __FUNCTION__))))) |
1325 | #define CATCH_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1325, __FUNCTION__, (CATCH_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1325, __FUNCTION__))))) TREE_OPERAND (CATCH_EXPR_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1325, __FUNCTION__, (CATCH_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1325, __FUNCTION__))))) |
1326 | |
1327 | /* EH_FILTER_EXPR accessors. */ |
1328 | #define EH_FILTER_TYPES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1328, __FUNCTION__, (EH_FILTER_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1328, __FUNCTION__))))) TREE_OPERAND (EH_FILTER_EXPR_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1328, __FUNCTION__, (EH_FILTER_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1328, __FUNCTION__))))) |
1329 | #define EH_FILTER_FAILURE(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1329, __FUNCTION__, (EH_FILTER_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1329, __FUNCTION__))))) TREE_OPERAND (EH_FILTER_EXPR_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1329, __FUNCTION__, (EH_FILTER_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1329, __FUNCTION__))))) |
1330 | |
1331 | /* OBJ_TYPE_REF accessors. */ |
1332 | #define OBJ_TYPE_REF_EXPR(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1332, __FUNCTION__, (OBJ_TYPE_REF)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1332, __FUNCTION__))))) TREE_OPERAND (OBJ_TYPE_REF_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1332, __FUNCTION__, (OBJ_TYPE_REF)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1332, __FUNCTION__))))) |
1333 | #define OBJ_TYPE_REF_OBJECT(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1333, __FUNCTION__, (OBJ_TYPE_REF)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1333, __FUNCTION__))))) TREE_OPERAND (OBJ_TYPE_REF_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1333, __FUNCTION__, (OBJ_TYPE_REF)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1333, __FUNCTION__))))) |
1334 | #define OBJ_TYPE_REF_TOKEN(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1334, __FUNCTION__, (OBJ_TYPE_REF)))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1334, __FUNCTION__))))) TREE_OPERAND (OBJ_TYPE_REF_CHECK (NODE), 2)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1334, __FUNCTION__, (OBJ_TYPE_REF)))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1334, __FUNCTION__))))) |
1335 | |
1336 | /* ASSERT_EXPR accessors. */ |
1337 | #define ASSERT_EXPR_VAR(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1337, __FUNCTION__, (ASSERT_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1337, __FUNCTION__))))) TREE_OPERAND (ASSERT_EXPR_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1337, __FUNCTION__, (ASSERT_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1337, __FUNCTION__))))) |
1338 | #define ASSERT_EXPR_COND(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1338, __FUNCTION__, (ASSERT_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1338, __FUNCTION__))))) TREE_OPERAND (ASSERT_EXPR_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1338, __FUNCTION__, (ASSERT_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1338, __FUNCTION__))))) |
1339 | |
1340 | /* CALL_EXPR accessors. */ |
1341 | #define CALL_EXPR_FN(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1341, __FUNCTION__, (CALL_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1341, __FUNCTION__))))) TREE_OPERAND (CALL_EXPR_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1341, __FUNCTION__, (CALL_EXPR)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1341, __FUNCTION__))))) |
1342 | #define CALL_EXPR_STATIC_CHAIN(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1342, __FUNCTION__, (CALL_EXPR)))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1342, __FUNCTION__))))) TREE_OPERAND (CALL_EXPR_CHECK (NODE), 2)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1342, __FUNCTION__, (CALL_EXPR)))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1342, __FUNCTION__))))) |
1343 | #define CALL_EXPR_ARG(NODE, I)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1343, __FUNCTION__, (CALL_EXPR)))), ((I) + 3), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1343, __FUNCTION__))))) TREE_OPERAND (CALL_EXPR_CHECK (NODE), (I) + 3)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1343, __FUNCTION__, (CALL_EXPR)))), ((I) + 3), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1343, __FUNCTION__))))) |
1344 | #define call_expr_nargs(NODE)(((int)((unsigned long) (*tree_int_cst_elt_check (((tree_class_check ((NODE), (tcc_vl_exp), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1344, __FUNCTION__))->exp.operands[0]), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1344, __FUNCTION__)))) - 3) (VL_EXP_OPERAND_LENGTH (NODE)((int)((unsigned long) (*tree_int_cst_elt_check (((tree_class_check ((NODE), (tcc_vl_exp), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1344, __FUNCTION__))->exp.operands[0]), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1344, __FUNCTION__)))) - 3) |
1345 | #define CALL_EXPR_IFN(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1345, __FUNCTION__, (CALL_EXPR)))->base.u.ifn) (CALL_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1345, __FUNCTION__, (CALL_EXPR)))->base.u.ifn) |
1346 | |
1347 | /* CALL_EXPR_ARGP returns a pointer to the argument vector for NODE. |
1348 | We can't use &CALL_EXPR_ARG (NODE, 0) because that will complain if |
1349 | the argument count is zero when checking is enabled. Instead, do |
1350 | the pointer arithmetic to advance past the 3 fixed operands in a |
1351 | CALL_EXPR. That produces a valid pointer to just past the end of the |
1352 | operand array, even if it's not valid to dereference it. */ |
1353 | #define CALL_EXPR_ARGP(NODE)(&((*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1353, __FUNCTION__, (CALL_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1353, __FUNCTION__)))))) + 3) \ |
1354 | (&(TREE_OPERAND (CALL_EXPR_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1354, __FUNCTION__, (CALL_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1354, __FUNCTION__)))))) + 3) |
1355 | |
1356 | /* TM directives and accessors. */ |
1357 | #define TRANSACTION_EXPR_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1357, __FUNCTION__, (TRANSACTION_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1357, __FUNCTION__))))) \ |
1358 | TREE_OPERAND (TRANSACTION_EXPR_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1358, __FUNCTION__, (TRANSACTION_EXPR)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1358, __FUNCTION__))))) |
1359 | #define TRANSACTION_EXPR_OUTER(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1359, __FUNCTION__, (TRANSACTION_EXPR)))->base.static_flag ) \ |
1360 | (TRANSACTION_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1360, __FUNCTION__, (TRANSACTION_EXPR)))->base.static_flag) |
1361 | #define TRANSACTION_EXPR_RELAXED(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1361, __FUNCTION__, (TRANSACTION_EXPR)))->base.public_flag ) \ |
1362 | (TRANSACTION_EXPR_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1362, __FUNCTION__, (TRANSACTION_EXPR)))->base.public_flag) |
1363 | |
1364 | /* OpenMP and OpenACC directive and clause accessors. */ |
1365 | |
1366 | /* Generic accessors for OMP nodes that keep the body as operand 0, and clauses |
1367 | as operand 1. */ |
1368 | #define OMP_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OACC_PARALLEL), (OMP_MASTER), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1368, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1368, __FUNCTION__))))) \ |
1369 | TREE_OPERAND (TREE_RANGE_CHECK (NODE, OACC_PARALLEL, OMP_MASTER), 0)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OACC_PARALLEL), (OMP_MASTER), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1369, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1369, __FUNCTION__))))) |
1370 | #define OMP_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OACC_PARALLEL), (OMP_SCAN), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1370, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1370, __FUNCTION__))))) \ |
1371 | TREE_OPERAND (TREE_RANGE_CHECK (NODE, OACC_PARALLEL, OMP_SCAN), 1)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OACC_PARALLEL), (OMP_SCAN), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1371, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1371, __FUNCTION__))))) |
1372 | |
1373 | /* Generic accessors for OMP nodes that keep clauses as operand 0. */ |
1374 | #define OMP_STANDALONE_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OACC_CACHE), (OMP_TARGET_EXIT_DATA), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1374, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1374, __FUNCTION__))))) \ |
1375 | TREE_OPERAND (TREE_RANGE_CHECK (NODE, OACC_CACHE, OMP_TARGET_EXIT_DATA), 0)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OACC_CACHE), (OMP_TARGET_EXIT_DATA), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1375, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1375, __FUNCTION__))))) |
1376 | |
1377 | #define OACC_DATA_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1377, __FUNCTION__, (OACC_DATA)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1377, __FUNCTION__))))) \ |
1378 | TREE_OPERAND (OACC_DATA_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1378, __FUNCTION__, (OACC_DATA)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1378, __FUNCTION__))))) |
1379 | #define OACC_DATA_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1379, __FUNCTION__, (OACC_DATA)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1379, __FUNCTION__))))) \ |
1380 | TREE_OPERAND (OACC_DATA_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1380, __FUNCTION__, (OACC_DATA)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1380, __FUNCTION__))))) |
1381 | |
1382 | #define OACC_HOST_DATA_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1382, __FUNCTION__, (OACC_HOST_DATA)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1382, __FUNCTION__))))) \ |
1383 | TREE_OPERAND (OACC_HOST_DATA_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1383, __FUNCTION__, (OACC_HOST_DATA)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1383, __FUNCTION__))))) |
1384 | #define OACC_HOST_DATA_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1384, __FUNCTION__, (OACC_HOST_DATA)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1384, __FUNCTION__))))) \ |
1385 | TREE_OPERAND (OACC_HOST_DATA_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1385, __FUNCTION__, (OACC_HOST_DATA)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1385, __FUNCTION__))))) |
1386 | |
1387 | #define OACC_CACHE_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1387, __FUNCTION__, (OACC_CACHE)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1387, __FUNCTION__))))) \ |
1388 | TREE_OPERAND (OACC_CACHE_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1388, __FUNCTION__, (OACC_CACHE)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1388, __FUNCTION__))))) |
1389 | |
1390 | #define OACC_DECLARE_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1390, __FUNCTION__, (OACC_DECLARE)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1390, __FUNCTION__))))) \ |
1391 | TREE_OPERAND (OACC_DECLARE_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1391, __FUNCTION__, (OACC_DECLARE)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1391, __FUNCTION__))))) |
1392 | |
1393 | #define OACC_ENTER_DATA_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1393, __FUNCTION__, (OACC_ENTER_DATA)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1393, __FUNCTION__))))) \ |
1394 | TREE_OPERAND (OACC_ENTER_DATA_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1394, __FUNCTION__, (OACC_ENTER_DATA)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1394, __FUNCTION__))))) |
1395 | |
1396 | #define OACC_EXIT_DATA_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1396, __FUNCTION__, (OACC_EXIT_DATA)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1396, __FUNCTION__))))) \ |
1397 | TREE_OPERAND (OACC_EXIT_DATA_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1397, __FUNCTION__, (OACC_EXIT_DATA)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1397, __FUNCTION__))))) |
1398 | |
1399 | #define OACC_UPDATE_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1399, __FUNCTION__, (OACC_UPDATE)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1399, __FUNCTION__))))) \ |
1400 | TREE_OPERAND (OACC_UPDATE_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1400, __FUNCTION__, (OACC_UPDATE)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1400, __FUNCTION__))))) |
1401 | |
1402 | #define OMP_PARALLEL_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1402, __FUNCTION__, (OMP_PARALLEL)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1402, __FUNCTION__))))) TREE_OPERAND (OMP_PARALLEL_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1402, __FUNCTION__, (OMP_PARALLEL)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1402, __FUNCTION__))))) |
1403 | #define OMP_PARALLEL_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1403, __FUNCTION__, (OMP_PARALLEL)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1403, __FUNCTION__))))) TREE_OPERAND (OMP_PARALLEL_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1403, __FUNCTION__, (OMP_PARALLEL)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1403, __FUNCTION__))))) |
1404 | |
1405 | #define OMP_TASK_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1405, __FUNCTION__, (OMP_TASK)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1405, __FUNCTION__))))) TREE_OPERAND (OMP_TASK_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1405, __FUNCTION__, (OMP_TASK)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1405, __FUNCTION__))))) |
1406 | #define OMP_TASK_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1406, __FUNCTION__, (OMP_TASK)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1406, __FUNCTION__))))) TREE_OPERAND (OMP_TASK_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1406, __FUNCTION__, (OMP_TASK)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1406, __FUNCTION__))))) |
1407 | |
1408 | #define OMP_TASKREG_CHECK(NODE)(tree_range_check ((NODE), (OMP_PARALLEL), (OMP_TASK), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1408, __FUNCTION__)) TREE_RANGE_CHECK (NODE, OMP_PARALLEL, OMP_TASK)(tree_range_check ((NODE), (OMP_PARALLEL), (OMP_TASK), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1408, __FUNCTION__)) |
1409 | #define OMP_TASKREG_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_PARALLEL), (OMP_TASK), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1409, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1409, __FUNCTION__))))) TREE_OPERAND (OMP_TASKREG_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_PARALLEL), (OMP_TASK), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1409, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1409, __FUNCTION__))))) |
1410 | #define OMP_TASKREG_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_PARALLEL), (OMP_TASK), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1410, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1410, __FUNCTION__))))) TREE_OPERAND (OMP_TASKREG_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_PARALLEL), (OMP_TASK), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1410, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1410, __FUNCTION__))))) |
1411 | |
1412 | #define OMP_LOOPING_CHECK(NODE)(tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1412, __FUNCTION__)) TREE_RANGE_CHECK (NODE, OMP_FOR, OACC_LOOP)(tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1412, __FUNCTION__)) |
1413 | #define OMP_FOR_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1413, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1413, __FUNCTION__))))) TREE_OPERAND (OMP_LOOPING_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1413, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1413, __FUNCTION__))))) |
1414 | #define OMP_FOR_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1414, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1414, __FUNCTION__))))) TREE_OPERAND (OMP_LOOPING_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1414, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1414, __FUNCTION__))))) |
1415 | #define OMP_FOR_INIT(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1415, __FUNCTION__))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1415, __FUNCTION__))))) TREE_OPERAND (OMP_LOOPING_CHECK (NODE), 2)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1415, __FUNCTION__))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1415, __FUNCTION__))))) |
1416 | #define OMP_FOR_COND(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1416, __FUNCTION__))), (3), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1416, __FUNCTION__))))) TREE_OPERAND (OMP_LOOPING_CHECK (NODE), 3)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1416, __FUNCTION__))), (3), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1416, __FUNCTION__))))) |
1417 | #define OMP_FOR_INCR(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1417, __FUNCTION__))), (4), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1417, __FUNCTION__))))) TREE_OPERAND (OMP_LOOPING_CHECK (NODE), 4)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1417, __FUNCTION__))), (4), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1417, __FUNCTION__))))) |
1418 | #define OMP_FOR_PRE_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1418, __FUNCTION__))), (5), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1418, __FUNCTION__))))) TREE_OPERAND (OMP_LOOPING_CHECK (NODE), 5)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1418, __FUNCTION__))), (5), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1418, __FUNCTION__))))) |
1419 | #define OMP_FOR_ORIG_DECLS(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1419, __FUNCTION__))), (6), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1419, __FUNCTION__))))) TREE_OPERAND (OMP_LOOPING_CHECK (NODE), 6)(*((const_cast<tree*> (tree_operand_check (((tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1419, __FUNCTION__))), (6), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1419, __FUNCTION__))))) |
1420 | |
1421 | #define OMP_SECTIONS_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1421, __FUNCTION__, (OMP_SECTIONS)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1421, __FUNCTION__))))) TREE_OPERAND (OMP_SECTIONS_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1421, __FUNCTION__, (OMP_SECTIONS)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1421, __FUNCTION__))))) |
1422 | #define OMP_SECTIONS_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1422, __FUNCTION__, (OMP_SECTIONS)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1422, __FUNCTION__))))) TREE_OPERAND (OMP_SECTIONS_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1422, __FUNCTION__, (OMP_SECTIONS)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1422, __FUNCTION__))))) |
1423 | |
1424 | #define OMP_SECTION_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1424, __FUNCTION__, (OMP_SECTION)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1424, __FUNCTION__))))) TREE_OPERAND (OMP_SECTION_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1424, __FUNCTION__, (OMP_SECTION)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1424, __FUNCTION__))))) |
1425 | |
1426 | #define OMP_SINGLE_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1426, __FUNCTION__, (OMP_SINGLE)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1426, __FUNCTION__))))) TREE_OPERAND (OMP_SINGLE_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1426, __FUNCTION__, (OMP_SINGLE)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1426, __FUNCTION__))))) |
1427 | #define OMP_SINGLE_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1427, __FUNCTION__, (OMP_SINGLE)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1427, __FUNCTION__))))) TREE_OPERAND (OMP_SINGLE_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1427, __FUNCTION__, (OMP_SINGLE)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1427, __FUNCTION__))))) |
1428 | |
1429 | #define OMP_MASTER_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1429, __FUNCTION__, (OMP_MASTER)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1429, __FUNCTION__))))) TREE_OPERAND (OMP_MASTER_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1429, __FUNCTION__, (OMP_MASTER)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1429, __FUNCTION__))))) |
1430 | |
1431 | #define OMP_TASKGROUP_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1431, __FUNCTION__, (OMP_TASKGROUP)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1431, __FUNCTION__))))) TREE_OPERAND (OMP_TASKGROUP_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1431, __FUNCTION__, (OMP_TASKGROUP)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1431, __FUNCTION__))))) |
1432 | #define OMP_TASKGROUP_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1432, __FUNCTION__, (OMP_TASKGROUP)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1432, __FUNCTION__))))) \ |
1433 | TREE_OPERAND (OMP_TASKGROUP_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1433, __FUNCTION__, (OMP_TASKGROUP)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1433, __FUNCTION__))))) |
1434 | |
1435 | #define OMP_ORDERED_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1435, __FUNCTION__, (OMP_ORDERED)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1435, __FUNCTION__))))) TREE_OPERAND (OMP_ORDERED_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1435, __FUNCTION__, (OMP_ORDERED)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1435, __FUNCTION__))))) |
1436 | #define OMP_ORDERED_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1436, __FUNCTION__, (OMP_ORDERED)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1436, __FUNCTION__))))) TREE_OPERAND (OMP_ORDERED_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1436, __FUNCTION__, (OMP_ORDERED)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1436, __FUNCTION__))))) |
1437 | |
1438 | #define OMP_CRITICAL_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1438, __FUNCTION__, (OMP_CRITICAL)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1438, __FUNCTION__))))) TREE_OPERAND (OMP_CRITICAL_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1438, __FUNCTION__, (OMP_CRITICAL)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1438, __FUNCTION__))))) |
1439 | #define OMP_CRITICAL_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1439, __FUNCTION__, (OMP_CRITICAL)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1439, __FUNCTION__))))) TREE_OPERAND (OMP_CRITICAL_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1439, __FUNCTION__, (OMP_CRITICAL)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1439, __FUNCTION__))))) |
1440 | #define OMP_CRITICAL_NAME(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1440, __FUNCTION__, (OMP_CRITICAL)))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1440, __FUNCTION__))))) TREE_OPERAND (OMP_CRITICAL_CHECK (NODE), 2)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1440, __FUNCTION__, (OMP_CRITICAL)))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1440, __FUNCTION__))))) |
1441 | |
1442 | #define OMP_TEAMS_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1442, __FUNCTION__, (OMP_TEAMS)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1442, __FUNCTION__))))) TREE_OPERAND (OMP_TEAMS_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1442, __FUNCTION__, (OMP_TEAMS)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1442, __FUNCTION__))))) |
1443 | #define OMP_TEAMS_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1443, __FUNCTION__, (OMP_TEAMS)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1443, __FUNCTION__))))) TREE_OPERAND (OMP_TEAMS_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1443, __FUNCTION__, (OMP_TEAMS)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1443, __FUNCTION__))))) |
1444 | |
1445 | #define OMP_TARGET_DATA_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1445, __FUNCTION__, (OMP_TARGET_DATA)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1445, __FUNCTION__))))) \ |
1446 | TREE_OPERAND (OMP_TARGET_DATA_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1446, __FUNCTION__, (OMP_TARGET_DATA)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1446, __FUNCTION__))))) |
1447 | #define OMP_TARGET_DATA_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1447, __FUNCTION__, (OMP_TARGET_DATA)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1447, __FUNCTION__)))))\ |
1448 | TREE_OPERAND (OMP_TARGET_DATA_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1448, __FUNCTION__, (OMP_TARGET_DATA)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1448, __FUNCTION__))))) |
1449 | |
1450 | #define OMP_TARGET_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1450, __FUNCTION__, (OMP_TARGET)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1450, __FUNCTION__))))) TREE_OPERAND (OMP_TARGET_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1450, __FUNCTION__, (OMP_TARGET)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1450, __FUNCTION__))))) |
1451 | #define OMP_TARGET_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1451, __FUNCTION__, (OMP_TARGET)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1451, __FUNCTION__))))) TREE_OPERAND (OMP_TARGET_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1451, __FUNCTION__, (OMP_TARGET)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1451, __FUNCTION__))))) |
1452 | |
1453 | #define OMP_TARGET_UPDATE_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1453, __FUNCTION__, (OMP_TARGET_UPDATE)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1453, __FUNCTION__)))))\ |
1454 | TREE_OPERAND (OMP_TARGET_UPDATE_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1454, __FUNCTION__, (OMP_TARGET_UPDATE)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1454, __FUNCTION__))))) |
1455 | |
1456 | #define OMP_TARGET_ENTER_DATA_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1456, __FUNCTION__, (OMP_TARGET_ENTER_DATA)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1456, __FUNCTION__)))))\ |
1457 | TREE_OPERAND (OMP_TARGET_ENTER_DATA_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1457, __FUNCTION__, (OMP_TARGET_ENTER_DATA)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1457, __FUNCTION__))))) |
1458 | |
1459 | #define OMP_TARGET_EXIT_DATA_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1459, __FUNCTION__, (OMP_TARGET_EXIT_DATA)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1459, __FUNCTION__)))))\ |
1460 | TREE_OPERAND (OMP_TARGET_EXIT_DATA_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1460, __FUNCTION__, (OMP_TARGET_EXIT_DATA)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1460, __FUNCTION__))))) |
1461 | |
1462 | #define OMP_SCAN_BODY(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1462, __FUNCTION__, (OMP_SCAN)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1462, __FUNCTION__))))) TREE_OPERAND (OMP_SCAN_CHECK (NODE), 0)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1462, __FUNCTION__, (OMP_SCAN)))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1462, __FUNCTION__))))) |
1463 | #define OMP_SCAN_CLAUSES(NODE)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1463, __FUNCTION__, (OMP_SCAN)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1463, __FUNCTION__))))) TREE_OPERAND (OMP_SCAN_CHECK (NODE), 1)(*((const_cast<tree*> (tree_operand_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1463, __FUNCTION__, (OMP_SCAN)))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1463, __FUNCTION__))))) |
1464 | |
1465 | #define OMP_CLAUSE_SIZE(NODE)(*(omp_clause_elt_check (((omp_clause_range_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1465, __FUNCTION__, (OMP_CLAUSE)))), (OMP_CLAUSE_FROM), (OMP_CLAUSE__CACHE_ ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1465, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1465, __FUNCTION__))) \ |
1466 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_RANGE_CHECK (OMP_CLAUSE_CHECK (NODE), \(*(omp_clause_elt_check (((omp_clause_range_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1466, __FUNCTION__, (OMP_CLAUSE)))), (OMP_CLAUSE_FROM), (OMP_CLAUSE__CACHE_ ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1468, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1468, __FUNCTION__))) |
1467 | OMP_CLAUSE_FROM, \(*(omp_clause_elt_check (((omp_clause_range_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1466, __FUNCTION__, (OMP_CLAUSE)))), (OMP_CLAUSE_FROM), (OMP_CLAUSE__CACHE_ ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1468, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1468, __FUNCTION__))) |
1468 | OMP_CLAUSE__CACHE_), 1)(*(omp_clause_elt_check (((omp_clause_range_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1466, __FUNCTION__, (OMP_CLAUSE)))), (OMP_CLAUSE_FROM), (OMP_CLAUSE__CACHE_ ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1468, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1468, __FUNCTION__))) |
1469 | |
1470 | #define OMP_CLAUSE_CHAIN(NODE)((contains_struct_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1470, __FUNCTION__, (OMP_CLAUSE)))), (TS_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1470, __FUNCTION__))->common.chain) TREE_CHAIN (OMP_CLAUSE_CHECK (NODE))((contains_struct_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1470, __FUNCTION__, (OMP_CLAUSE)))), (TS_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1470, __FUNCTION__))->common.chain) |
1471 | #define OMP_CLAUSE_DECL(NODE)(*(omp_clause_elt_check (((omp_clause_range_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1471, __FUNCTION__, (OMP_CLAUSE)))), (OMP_CLAUSE_PRIVATE), ( OMP_CLAUSE__SCANTEMP_), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1471, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1471, __FUNCTION__))) \ |
1472 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_RANGE_CHECK (OMP_CLAUSE_CHECK (NODE), \(*(omp_clause_elt_check (((omp_clause_range_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1472, __FUNCTION__, (OMP_CLAUSE)))), (OMP_CLAUSE_PRIVATE), ( OMP_CLAUSE__SCANTEMP_), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1474, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1474, __FUNCTION__))) |
1473 | OMP_CLAUSE_PRIVATE, \(*(omp_clause_elt_check (((omp_clause_range_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1472, __FUNCTION__, (OMP_CLAUSE)))), (OMP_CLAUSE_PRIVATE), ( OMP_CLAUSE__SCANTEMP_), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1474, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1474, __FUNCTION__))) |
1474 | OMP_CLAUSE__SCANTEMP_), 0)(*(omp_clause_elt_check (((omp_clause_range_check (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1472, __FUNCTION__, (OMP_CLAUSE)))), (OMP_CLAUSE_PRIVATE), ( OMP_CLAUSE__SCANTEMP_), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1474, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1474, __FUNCTION__))) |
1475 | #define OMP_CLAUSE_HAS_LOCATION(NODE)(((IS_ADHOC_LOC (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1475, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.locus)) ? get_location_from_adhoc_loc (line_table, ((tree_check ((NODE ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1475, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.locus) : (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1475, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.locus)) != ((location_t) 0)) \ |
1476 | (LOCATION_LOCUS ((OMP_CLAUSE_CHECK (NODE))->omp_clause.locus)((IS_ADHOC_LOC (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1476, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.locus)) ? get_location_from_adhoc_loc (line_table, ((tree_check ((NODE ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1476, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.locus) : (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1476, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.locus)) \ |
1477 | != UNKNOWN_LOCATION((location_t) 0)) |
1478 | #define OMP_CLAUSE_LOCATION(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1478, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.locus (OMP_CLAUSE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1478, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.locus |
1479 | |
1480 | /* True on OMP_FOR and other OpenMP/OpenACC looping constructs if the loop nest |
1481 | is non-rectangular. */ |
1482 | #define OMP_FOR_NON_RECTANGULAR(NODE)((tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1482, __FUNCTION__))->base.private_flag) \ |
1483 | (OMP_LOOPING_CHECK (NODE)(tree_range_check ((NODE), (OMP_FOR), (OACC_LOOP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1483, __FUNCTION__))->base.private_flag) |
1484 | |
1485 | /* True on an OMP_SECTION statement that was the last lexical member. |
1486 | This status is meaningful in the implementation of lastprivate. */ |
1487 | #define OMP_SECTION_LAST(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1487, __FUNCTION__, (OMP_SECTION)))->base.private_flag) \ |
1488 | (OMP_SECTION_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1488, __FUNCTION__, (OMP_SECTION)))->base.private_flag) |
1489 | |
1490 | /* True on an OMP_PARALLEL statement if it represents an explicit |
1491 | combined parallel work-sharing constructs. */ |
1492 | #define OMP_PARALLEL_COMBINED(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1492, __FUNCTION__, (OMP_PARALLEL)))->base.private_flag) \ |
1493 | (OMP_PARALLEL_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1493, __FUNCTION__, (OMP_PARALLEL)))->base.private_flag) |
1494 | |
1495 | /* True on an OMP_TEAMS statement if it represents an explicit |
1496 | combined teams distribute constructs. */ |
1497 | #define OMP_TEAMS_COMBINED(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1497, __FUNCTION__, (OMP_TEAMS)))->base.private_flag) \ |
1498 | (OMP_TEAMS_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1498, __FUNCTION__, (OMP_TEAMS)))->base.private_flag) |
1499 | |
1500 | /* True on an OMP_TARGET statement if it represents explicit |
1501 | combined target teams, target parallel or target simd constructs. */ |
1502 | #define OMP_TARGET_COMBINED(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1502, __FUNCTION__, (OMP_TARGET)))->base.private_flag) \ |
1503 | (OMP_TARGET_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1503, __FUNCTION__, (OMP_TARGET)))->base.private_flag) |
1504 | |
1505 | /* Memory order for OMP_ATOMIC*. */ |
1506 | #define OMP_ATOMIC_MEMORY_ORDER(NODE)((tree_range_check ((NODE), (OMP_ATOMIC), (OMP_ATOMIC_CAPTURE_NEW ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1506, __FUNCTION__))->base.u.omp_atomic_memory_order) \ |
1507 | (TREE_RANGE_CHECK (NODE, OMP_ATOMIC, \(tree_range_check ((NODE), (OMP_ATOMIC), (OMP_ATOMIC_CAPTURE_NEW ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1508, __FUNCTION__)) |
1508 | OMP_ATOMIC_CAPTURE_NEW)(tree_range_check ((NODE), (OMP_ATOMIC), (OMP_ATOMIC_CAPTURE_NEW ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1508, __FUNCTION__))->base.u.omp_atomic_memory_order) |
1509 | |
1510 | /* True on a PRIVATE clause if its decl is kept around for debugging |
1511 | information only and its DECL_VALUE_EXPR is supposed to point |
1512 | to what it has been remapped to. */ |
1513 | #define OMP_CLAUSE_PRIVATE_DEBUG(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_PRIVATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1513, __FUNCTION__))->base.public_flag) \ |
1514 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_PRIVATE)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_PRIVATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1514, __FUNCTION__))->base.public_flag) |
1515 | |
1516 | /* True on a PRIVATE clause if ctor needs access to outer region's |
1517 | variable. */ |
1518 | #define OMP_CLAUSE_PRIVATE_OUTER_REF(NODE)(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_PRIVATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1518, __FUNCTION__)))->base.private_flag) \ |
1519 | TREE_PRIVATE (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_PRIVATE))(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_PRIVATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1519, __FUNCTION__)))->base.private_flag) |
1520 | |
1521 | /* True if a PRIVATE clause is for a C++ class IV on taskloop construct |
1522 | (thus should be private on the outer taskloop and firstprivate on |
1523 | task). */ |
1524 | #define OMP_CLAUSE_PRIVATE_TASKLOOP_IV(NODE)(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_PRIVATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1524, __FUNCTION__)))->base.protected_flag) \ |
1525 | TREE_PROTECTED (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_PRIVATE))(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_PRIVATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1525, __FUNCTION__)))->base.protected_flag) |
1526 | |
1527 | /* True on a FIRSTPRIVATE clause if it has been added implicitly. */ |
1528 | #define OMP_CLAUSE_FIRSTPRIVATE_IMPLICIT(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_FIRSTPRIVATE) , "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1528, __FUNCTION__))->base.public_flag) \ |
1529 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_FIRSTPRIVATE)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_FIRSTPRIVATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1529, __FUNCTION__))->base.public_flag) |
1530 | |
1531 | /* True on a FIRSTPRIVATE clause if only the reference and not what it refers |
1532 | to should be firstprivatized. */ |
1533 | #define OMP_CLAUSE_FIRSTPRIVATE_NO_REFERENCE(NODE)(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_FIRSTPRIVATE ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1533, __FUNCTION__)))->base.private_flag) \ |
1534 | TREE_PRIVATE (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_FIRSTPRIVATE))(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_FIRSTPRIVATE ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1534, __FUNCTION__)))->base.private_flag) |
1535 | |
1536 | /* True on a LASTPRIVATE clause if a FIRSTPRIVATE clause for the same |
1537 | decl is present in the chain. */ |
1538 | #define OMP_CLAUSE_LASTPRIVATE_FIRSTPRIVATE(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_LASTPRIVATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1538, __FUNCTION__))->base.public_flag) \ |
1539 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_LASTPRIVATE)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_LASTPRIVATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1539, __FUNCTION__))->base.public_flag) |
1540 | #define OMP_CLAUSE_LASTPRIVATE_STMT(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_LASTPRIVATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1540, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1540, __FUNCTION__))) \ |
1541 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, \(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_LASTPRIVATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1542, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1543, __FUNCTION__))) |
1542 | OMP_CLAUSE_LASTPRIVATE),\(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_LASTPRIVATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1542, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1543, __FUNCTION__))) |
1543 | 1)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_LASTPRIVATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1542, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1543, __FUNCTION__))) |
1544 | #define OMP_CLAUSE_LASTPRIVATE_GIMPLE_SEQ(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1544, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.gimple_reduction_init \ |
1545 | (OMP_CLAUSE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1545, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.gimple_reduction_init |
1546 | |
1547 | /* True if a LASTPRIVATE clause is for a C++ class IV on taskloop or |
1548 | loop construct (thus should be lastprivate on the outer taskloop and |
1549 | firstprivate on task for the taskloop construct and carefully handled |
1550 | for loop construct). */ |
1551 | #define OMP_CLAUSE_LASTPRIVATE_LOOP_IV(NODE)(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_LASTPRIVATE) , "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1551, __FUNCTION__)))->base.protected_flag) \ |
1552 | TREE_PROTECTED (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_LASTPRIVATE))(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_LASTPRIVATE) , "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1552, __FUNCTION__)))->base.protected_flag) |
1553 | |
1554 | /* True if a LASTPRIVATE clause has CONDITIONAL: modifier. */ |
1555 | #define OMP_CLAUSE_LASTPRIVATE_CONDITIONAL(NODE)(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_LASTPRIVATE) , "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1555, __FUNCTION__)))->base.private_flag) \ |
1556 | TREE_PRIVATE (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_LASTPRIVATE))(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_LASTPRIVATE) , "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1556, __FUNCTION__)))->base.private_flag) |
1557 | |
1558 | /* True on a SHARED clause if a FIRSTPRIVATE clause for the same |
1559 | decl is present in the chain (this can happen only for taskloop |
1560 | with FIRSTPRIVATE/LASTPRIVATE on it originally. */ |
1561 | #define OMP_CLAUSE_SHARED_FIRSTPRIVATE(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_SHARED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1561, __FUNCTION__))->base.public_flag) \ |
1562 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_SHARED)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_SHARED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1562, __FUNCTION__))->base.public_flag) |
1563 | |
1564 | /* True on a SHARED clause if a scalar is not modified in the body and |
1565 | thus could be optimized as firstprivate. */ |
1566 | #define OMP_CLAUSE_SHARED_READONLY(NODE)(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_SHARED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1566, __FUNCTION__)))->base.private_flag) \ |
1567 | TREE_PRIVATE (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_SHARED))(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_SHARED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1567, __FUNCTION__)))->base.private_flag) |
1568 | |
1569 | #define OMP_CLAUSE_IF_MODIFIER(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_IF), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1569, __FUNCTION__))->omp_clause.subcode.if_modifier) \ |
1570 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_IF)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_IF), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1570, __FUNCTION__))->omp_clause.subcode.if_modifier) |
1571 | |
1572 | #define OMP_CLAUSE_FINAL_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_FINAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1572, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1572, __FUNCTION__))) \ |
1573 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_FINAL), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_FINAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1573, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1573, __FUNCTION__))) |
1574 | #define OMP_CLAUSE_IF_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_IF), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1574, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1574, __FUNCTION__))) \ |
1575 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_IF), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_IF), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1575, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1575, __FUNCTION__))) |
1576 | #define OMP_CLAUSE_NUM_THREADS_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_NUM_THREADS), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1576, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1576, __FUNCTION__))) \ |
1577 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_NUM_THREADS),0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_NUM_THREADS), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1577, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1577, __FUNCTION__))) |
1578 | #define OMP_CLAUSE_SCHEDULE_CHUNK_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_SCHEDULE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1578, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1578, __FUNCTION__))) \ |
1579 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_SCHEDULE), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_SCHEDULE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1579, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1579, __FUNCTION__))) |
1580 | #define OMP_CLAUSE_NUM_TASKS_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_NUM_TASKS), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1580, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1580, __FUNCTION__))) \ |
1581 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_NUM_TASKS), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_NUM_TASKS), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1581, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1581, __FUNCTION__))) |
1582 | #define OMP_CLAUSE_HINT_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_HINT), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1582, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1582, __FUNCTION__))) \ |
1583 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_HINT), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_HINT), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1583, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1583, __FUNCTION__))) |
1584 | |
1585 | #define OMP_CLAUSE_GRAINSIZE_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_GRAINSIZE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1585, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1585, __FUNCTION__))) \ |
1586 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_GRAINSIZE),0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_GRAINSIZE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1586, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1586, __FUNCTION__))) |
1587 | |
1588 | #define OMP_CLAUSE_PRIORITY_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_PRIORITY), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1588, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1588, __FUNCTION__))) \ |
1589 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_PRIORITY),0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_PRIORITY), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1589, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1589, __FUNCTION__))) |
1590 | |
1591 | /* OpenACC clause expressions */ |
1592 | #define OMP_CLAUSE_EXPR(NODE, CLAUSE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( CLAUSE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1592, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1592, __FUNCTION__))) \ |
1593 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, CLAUSE), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( CLAUSE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1593, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1593, __FUNCTION__))) |
1594 | #define OMP_CLAUSE_GANG_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_GANG), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1594, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1594, __FUNCTION__))) \ |
1595 | OMP_CLAUSE_OPERAND ( \(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_GANG), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1596, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1596, __FUNCTION__))) |
1596 | OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_GANG), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_GANG), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1596, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1596, __FUNCTION__))) |
1597 | #define OMP_CLAUSE_GANG_STATIC_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_GANG), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1597, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1597, __FUNCTION__))) \ |
1598 | OMP_CLAUSE_OPERAND ( \(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_GANG), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1599, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1599, __FUNCTION__))) |
1599 | OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_GANG), 1)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_GANG), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1599, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1599, __FUNCTION__))) |
1600 | #define OMP_CLAUSE_ASYNC_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_ASYNC), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1600, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1600, __FUNCTION__))) \ |
1601 | OMP_CLAUSE_OPERAND ( \(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_ASYNC), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1602, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1602, __FUNCTION__))) |
1602 | OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_ASYNC), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_ASYNC), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1602, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1602, __FUNCTION__))) |
1603 | #define OMP_CLAUSE_WAIT_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_WAIT), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1603, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1603, __FUNCTION__))) \ |
1604 | OMP_CLAUSE_OPERAND ( \(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_WAIT), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1605, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1605, __FUNCTION__))) |
1605 | OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_WAIT), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_WAIT), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1605, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1605, __FUNCTION__))) |
1606 | #define OMP_CLAUSE_VECTOR_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_VECTOR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1606, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1606, __FUNCTION__))) \ |
1607 | OMP_CLAUSE_OPERAND ( \(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_VECTOR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1608, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1608, __FUNCTION__))) |
1608 | OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_VECTOR), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_VECTOR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1608, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1608, __FUNCTION__))) |
1609 | #define OMP_CLAUSE_WORKER_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_WORKER), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1609, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1609, __FUNCTION__))) \ |
1610 | OMP_CLAUSE_OPERAND ( \(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_WORKER), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1611, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1611, __FUNCTION__))) |
1611 | OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_WORKER), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_WORKER), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1611, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1611, __FUNCTION__))) |
1612 | #define OMP_CLAUSE_NUM_GANGS_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_NUM_GANGS), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1612, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1612, __FUNCTION__))) \ |
1613 | OMP_CLAUSE_OPERAND ( \(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_NUM_GANGS), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1614, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1614, __FUNCTION__))) |
1614 | OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_NUM_GANGS), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_NUM_GANGS), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1614, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1614, __FUNCTION__))) |
1615 | #define OMP_CLAUSE_NUM_WORKERS_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_NUM_WORKERS), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1615, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1615, __FUNCTION__))) \ |
1616 | OMP_CLAUSE_OPERAND ( \(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_NUM_WORKERS), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1617, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1617, __FUNCTION__))) |
1617 | OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_NUM_WORKERS), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_NUM_WORKERS), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1617, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1617, __FUNCTION__))) |
1618 | #define OMP_CLAUSE_VECTOR_LENGTH_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_VECTOR_LENGTH), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1618, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1618, __FUNCTION__))) \ |
1619 | OMP_CLAUSE_OPERAND ( \(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_VECTOR_LENGTH), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1620, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1620, __FUNCTION__))) |
1620 | OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_VECTOR_LENGTH), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_VECTOR_LENGTH), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1620, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1620, __FUNCTION__))) |
1621 | |
1622 | #define OMP_CLAUSE_DEPEND_KIND(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_DEPEND), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1622, __FUNCTION__))->omp_clause.subcode.depend_kind) \ |
1623 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_DEPEND)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_DEPEND), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1623, __FUNCTION__))->omp_clause.subcode.depend_kind) |
1624 | |
1625 | #define OMP_CLAUSE_DEPEND_SINK_NEGATIVE(NODE)(((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1625, __FUNCTION__, (TREE_LIST))))->base.public_flag) \ |
1626 | TREE_PUBLIC (TREE_LIST_CHECK (NODE))(((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1626, __FUNCTION__, (TREE_LIST))))->base.public_flag) |
1627 | |
1628 | #define OMP_CLAUSE_MAP_KIND(NODE)((enum gomp_map_kind) (omp_clause_subcode_check ((NODE), (OMP_CLAUSE_MAP ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1628, __FUNCTION__))->omp_clause.subcode.map_kind) \ |
1629 | ((enum gomp_map_kind) OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_MAP)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_MAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1629, __FUNCTION__))->omp_clause.subcode.map_kind) |
1630 | #define OMP_CLAUSE_SET_MAP_KIND(NODE, MAP_KIND)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_MAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1630, __FUNCTION__))->omp_clause.subcode.map_kind = (unsigned int) (MAP_KIND)) \ |
1631 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_MAP)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_MAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1631, __FUNCTION__))->omp_clause.subcode.map_kind \ |
1632 | = (unsigned int) (MAP_KIND)) |
1633 | |
1634 | /* Nonzero if this map clause is for array (rather than pointer) based array |
1635 | section with zero bias. Both the non-decl OMP_CLAUSE_MAP and corresponding |
1636 | OMP_CLAUSE_MAP with GOMP_MAP_POINTER are marked with this flag. */ |
1637 | #define OMP_CLAUSE_MAP_ZERO_BIAS_ARRAY_SECTION(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_MAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1637, __FUNCTION__))->base.public_flag) \ |
1638 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_MAP)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_MAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1638, __FUNCTION__))->base.public_flag) |
1639 | /* Nonzero if this is a mapped array section, that might need special |
1640 | treatment if OMP_CLAUSE_SIZE is zero. */ |
1641 | #define OMP_CLAUSE_MAP_MAYBE_ZERO_LENGTH_ARRAY_SECTION(NODE)(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_MAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1641, __FUNCTION__)))->base.protected_flag) \ |
1642 | TREE_PROTECTED (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_MAP))(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_MAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1642, __FUNCTION__)))->base.protected_flag) |
1643 | /* Nonzero if this map clause is for an OpenACC compute construct's reduction |
1644 | variable. */ |
1645 | #define OMP_CLAUSE_MAP_IN_REDUCTION(NODE)(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_MAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1645, __FUNCTION__)))->base.private_flag) \ |
1646 | TREE_PRIVATE (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_MAP))(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_MAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1646, __FUNCTION__)))->base.private_flag) |
1647 | |
1648 | /* True on an OMP_CLAUSE_USE_DEVICE_PTR with an OpenACC 'if_present' |
1649 | clause. */ |
1650 | #define OMP_CLAUSE_USE_DEVICE_PTR_IF_PRESENT(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_USE_DEVICE_PTR ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1650, __FUNCTION__))->base.public_flag) \ |
1651 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_USE_DEVICE_PTR)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_USE_DEVICE_PTR ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1651, __FUNCTION__))->base.public_flag) |
1652 | |
1653 | #define OMP_CLAUSE_PROC_BIND_KIND(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_PROC_BIND), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1653, __FUNCTION__))->omp_clause.subcode.proc_bind_kind) \ |
1654 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_PROC_BIND)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_PROC_BIND), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1654, __FUNCTION__))->omp_clause.subcode.proc_bind_kind) |
1655 | |
1656 | #define OMP_CLAUSE_DEVICE_TYPE_KIND(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_DEVICE_TYPE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1656, __FUNCTION__))->omp_clause.subcode.device_type_kind ) \ |
1657 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_DEVICE_TYPE)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_DEVICE_TYPE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1657, __FUNCTION__))->omp_clause.subcode.device_type_kind) |
1658 | |
1659 | #define OMP_CLAUSE_COLLAPSE_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_COLLAPSE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1659, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1659, __FUNCTION__))) \ |
1660 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_COLLAPSE), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_COLLAPSE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1660, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1660, __FUNCTION__))) |
1661 | #define OMP_CLAUSE_COLLAPSE_ITERVAR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_COLLAPSE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1661, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1661, __FUNCTION__))) \ |
1662 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_COLLAPSE), 1)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_COLLAPSE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1662, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1662, __FUNCTION__))) |
1663 | #define OMP_CLAUSE_COLLAPSE_COUNT(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_COLLAPSE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1663, __FUNCTION__))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1663, __FUNCTION__))) \ |
1664 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_COLLAPSE), 2)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_COLLAPSE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1664, __FUNCTION__))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1664, __FUNCTION__))) |
1665 | |
1666 | #define OMP_CLAUSE_ORDERED_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_ORDERED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1666, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1666, __FUNCTION__))) \ |
1667 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_ORDERED), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_ORDERED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1667, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1667, __FUNCTION__))) |
1668 | |
1669 | #define OMP_CLAUSE_REDUCTION_CODE(NODE)((omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION), (OMP_CLAUSE_IN_REDUCTION ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1669, __FUNCTION__))->omp_clause.subcode.reduction_code) \ |
1670 | (OMP_CLAUSE_RANGE_CHECK (NODE, OMP_CLAUSE_REDUCTION, \(omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION), (OMP_CLAUSE_IN_REDUCTION ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1671, __FUNCTION__)) |
1671 | OMP_CLAUSE_IN_REDUCTION)(omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION), (OMP_CLAUSE_IN_REDUCTION ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1671, __FUNCTION__))->omp_clause.subcode.reduction_code) |
1672 | #define OMP_CLAUSE_REDUCTION_INIT(NODE)(*(omp_clause_elt_check (((omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION ), (OMP_CLAUSE_IN_REDUCTION), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1672, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1672, __FUNCTION__))) \ |
1673 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_RANGE_CHECK (NODE, OMP_CLAUSE_REDUCTION, \(*(omp_clause_elt_check (((omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION ), (OMP_CLAUSE_IN_REDUCTION), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1674, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1674, __FUNCTION__))) |
1674 | OMP_CLAUSE_IN_REDUCTION), 1)(*(omp_clause_elt_check (((omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION ), (OMP_CLAUSE_IN_REDUCTION), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1674, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1674, __FUNCTION__))) |
1675 | #define OMP_CLAUSE_REDUCTION_MERGE(NODE)(*(omp_clause_elt_check (((omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION ), (OMP_CLAUSE_IN_REDUCTION), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1675, __FUNCTION__))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1675, __FUNCTION__))) \ |
1676 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_RANGE_CHECK (NODE, OMP_CLAUSE_REDUCTION, \(*(omp_clause_elt_check (((omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION ), (OMP_CLAUSE_IN_REDUCTION), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1677, __FUNCTION__))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1677, __FUNCTION__))) |
1677 | OMP_CLAUSE_IN_REDUCTION), 2)(*(omp_clause_elt_check (((omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION ), (OMP_CLAUSE_IN_REDUCTION), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1677, __FUNCTION__))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1677, __FUNCTION__))) |
1678 | #define OMP_CLAUSE_REDUCTION_GIMPLE_INIT(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1678, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.gimple_reduction_init \ |
1679 | (OMP_CLAUSE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1679, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.gimple_reduction_init |
1680 | #define OMP_CLAUSE_REDUCTION_GIMPLE_MERGE(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1680, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.gimple_reduction_merge \ |
1681 | (OMP_CLAUSE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1681, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.gimple_reduction_merge |
1682 | #define OMP_CLAUSE_REDUCTION_PLACEHOLDER(NODE)(*(omp_clause_elt_check (((omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION ), (OMP_CLAUSE_IN_REDUCTION), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1682, __FUNCTION__))), (3), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1682, __FUNCTION__))) \ |
1683 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_RANGE_CHECK (NODE, OMP_CLAUSE_REDUCTION, \(*(omp_clause_elt_check (((omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION ), (OMP_CLAUSE_IN_REDUCTION), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1684, __FUNCTION__))), (3), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1684, __FUNCTION__))) |
1684 | OMP_CLAUSE_IN_REDUCTION), 3)(*(omp_clause_elt_check (((omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION ), (OMP_CLAUSE_IN_REDUCTION), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1684, __FUNCTION__))), (3), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1684, __FUNCTION__))) |
1685 | #define OMP_CLAUSE_REDUCTION_DECL_PLACEHOLDER(NODE)(*(omp_clause_elt_check (((omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION ), (OMP_CLAUSE_IN_REDUCTION), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1685, __FUNCTION__))), (4), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1685, __FUNCTION__))) \ |
1686 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_RANGE_CHECK (NODE, OMP_CLAUSE_REDUCTION, \(*(omp_clause_elt_check (((omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION ), (OMP_CLAUSE_IN_REDUCTION), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1687, __FUNCTION__))), (4), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1687, __FUNCTION__))) |
1687 | OMP_CLAUSE_IN_REDUCTION), 4)(*(omp_clause_elt_check (((omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION ), (OMP_CLAUSE_IN_REDUCTION), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1687, __FUNCTION__))), (4), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1687, __FUNCTION__))) |
1688 | |
1689 | /* True if a REDUCTION clause may reference the original list item (omp_orig) |
1690 | in its OMP_CLAUSE_REDUCTION_{,GIMPLE_}INIT. */ |
1691 | #define OMP_CLAUSE_REDUCTION_OMP_ORIG_REF(NODE)((omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION), (OMP_CLAUSE_IN_REDUCTION ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1691, __FUNCTION__))->base.public_flag) \ |
1692 | (OMP_CLAUSE_RANGE_CHECK (NODE, OMP_CLAUSE_REDUCTION, \(omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION), (OMP_CLAUSE_IN_REDUCTION ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1693, __FUNCTION__)) |
1693 | OMP_CLAUSE_IN_REDUCTION)(omp_clause_range_check ((NODE), (OMP_CLAUSE_REDUCTION), (OMP_CLAUSE_IN_REDUCTION ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1693, __FUNCTION__))->base.public_flag) |
1694 | |
1695 | /* True if a REDUCTION clause has task reduction-modifier. */ |
1696 | #define OMP_CLAUSE_REDUCTION_TASK(NODE)(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_REDUCTION), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1696, __FUNCTION__)))->base.protected_flag) \ |
1697 | TREE_PROTECTED (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_REDUCTION))(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_REDUCTION), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1697, __FUNCTION__)))->base.protected_flag) |
1698 | |
1699 | /* True if a REDUCTION clause has inscan reduction-modifier. */ |
1700 | #define OMP_CLAUSE_REDUCTION_INSCAN(NODE)(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_REDUCTION), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1700, __FUNCTION__)))->base.private_flag) \ |
1701 | TREE_PRIVATE (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_REDUCTION))(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_REDUCTION), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1701, __FUNCTION__)))->base.private_flag) |
1702 | |
1703 | /* True if a LINEAR clause doesn't need copy in. True for iterator vars which |
1704 | are always initialized inside of the loop construct, false otherwise. */ |
1705 | #define OMP_CLAUSE_LINEAR_NO_COPYIN(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_LINEAR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1705, __FUNCTION__))->base.public_flag) \ |
1706 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_LINEAR)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_LINEAR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1706, __FUNCTION__))->base.public_flag) |
1707 | |
1708 | /* True if a LINEAR clause doesn't need copy out. True for iterator vars which |
1709 | are declared inside of the simd construct. */ |
1710 | #define OMP_CLAUSE_LINEAR_NO_COPYOUT(NODE)(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_LINEAR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1710, __FUNCTION__)))->base.private_flag) \ |
1711 | TREE_PRIVATE (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_LINEAR))(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_LINEAR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1711, __FUNCTION__)))->base.private_flag) |
1712 | |
1713 | /* True if a LINEAR clause has a stride that is variable. */ |
1714 | #define OMP_CLAUSE_LINEAR_VARIABLE_STRIDE(NODE)(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_LINEAR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1714, __FUNCTION__)))->base.protected_flag) \ |
1715 | TREE_PROTECTED (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_LINEAR))(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_LINEAR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1715, __FUNCTION__)))->base.protected_flag) |
1716 | |
1717 | /* True if a LINEAR clause is for an array or allocatable variable that |
1718 | needs special handling by the frontend. */ |
1719 | #define OMP_CLAUSE_LINEAR_ARRAY(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_LINEAR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1719, __FUNCTION__))->base.deprecated_flag) \ |
1720 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_LINEAR)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_LINEAR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1720, __FUNCTION__))->base.deprecated_flag) |
1721 | |
1722 | #define OMP_CLAUSE_LINEAR_STEP(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_LINEAR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1722, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1722, __FUNCTION__))) \ |
1723 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_LINEAR), 1)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_LINEAR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1723, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1723, __FUNCTION__))) |
1724 | |
1725 | #define OMP_CLAUSE_LINEAR_STMT(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_LINEAR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1725, __FUNCTION__))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1725, __FUNCTION__))) \ |
1726 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_LINEAR), 2)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_LINEAR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1726, __FUNCTION__))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1726, __FUNCTION__))) |
1727 | |
1728 | #define OMP_CLAUSE_LINEAR_GIMPLE_SEQ(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1728, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.gimple_reduction_init \ |
1729 | (OMP_CLAUSE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1729, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.gimple_reduction_init |
1730 | |
1731 | #define OMP_CLAUSE_LINEAR_KIND(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_LINEAR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1731, __FUNCTION__))->omp_clause.subcode.linear_kind) \ |
1732 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_LINEAR)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_LINEAR), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1732, __FUNCTION__))->omp_clause.subcode.linear_kind) |
1733 | |
1734 | #define OMP_CLAUSE_ALIGNED_ALIGNMENT(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_ALIGNED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1734, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1734, __FUNCTION__))) \ |
1735 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_ALIGNED), 1)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_ALIGNED), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1735, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1735, __FUNCTION__))) |
1736 | |
1737 | #define OMP_CLAUSE_ALLOCATE_ALLOCATOR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_ALLOCATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1737, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1737, __FUNCTION__))) \ |
1738 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_ALLOCATE), 1)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_ALLOCATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1738, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1738, __FUNCTION__))) |
1739 | |
1740 | /* True if an ALLOCATE clause was present on a combined or composite |
1741 | construct and the code for splitting the clauses has already performed |
1742 | checking if the listed variable has explicit privatization on the |
1743 | construct. */ |
1744 | #define OMP_CLAUSE_ALLOCATE_COMBINED(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_ALLOCATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1744, __FUNCTION__))->base.public_flag) \ |
1745 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_ALLOCATE)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_ALLOCATE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1745, __FUNCTION__))->base.public_flag) |
1746 | |
1747 | #define OMP_CLAUSE_NUM_TEAMS_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_NUM_TEAMS), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1747, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1747, __FUNCTION__))) \ |
1748 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_NUM_TEAMS), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_NUM_TEAMS), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1748, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1748, __FUNCTION__))) |
1749 | |
1750 | #define OMP_CLAUSE_THREAD_LIMIT_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_THREAD_LIMIT), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1750, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1750, __FUNCTION__))) \ |
1751 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, \(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_THREAD_LIMIT), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1752, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1752, __FUNCTION__))) |
1752 | OMP_CLAUSE_THREAD_LIMIT), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_THREAD_LIMIT), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1752, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1752, __FUNCTION__))) |
1753 | |
1754 | #define OMP_CLAUSE_DEVICE_ID(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_DEVICE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1754, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1754, __FUNCTION__))) \ |
1755 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_DEVICE), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_DEVICE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1755, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1755, __FUNCTION__))) |
1756 | |
1757 | #define OMP_CLAUSE_DIST_SCHEDULE_CHUNK_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_DIST_SCHEDULE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1757, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1757, __FUNCTION__))) \ |
1758 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, \(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_DIST_SCHEDULE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1759, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1759, __FUNCTION__))) |
1759 | OMP_CLAUSE_DIST_SCHEDULE), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_DIST_SCHEDULE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1759, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1759, __FUNCTION__))) |
1760 | |
1761 | #define OMP_CLAUSE_SAFELEN_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_SAFELEN), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1761, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1761, __FUNCTION__))) \ |
1762 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_SAFELEN), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_SAFELEN), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1762, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1762, __FUNCTION__))) |
1763 | |
1764 | #define OMP_CLAUSE_SIMDLEN_EXPR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_SIMDLEN), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1764, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1764, __FUNCTION__))) \ |
1765 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_SIMDLEN), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_SIMDLEN), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1765, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1765, __FUNCTION__))) |
1766 | |
1767 | #define OMP_CLAUSE__SIMDUID__DECL(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE__SIMDUID_), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1767, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1767, __FUNCTION__))) \ |
1768 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE__SIMDUID_), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE__SIMDUID_), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1768, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1768, __FUNCTION__))) |
1769 | |
1770 | #define OMP_CLAUSE_SCHEDULE_KIND(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_SCHEDULE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1770, __FUNCTION__))->omp_clause.subcode.schedule_kind) \ |
1771 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_SCHEDULE)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_SCHEDULE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1771, __FUNCTION__))->omp_clause.subcode.schedule_kind) |
1772 | |
1773 | /* True if a SCHEDULE clause has the simd modifier on it. */ |
1774 | #define OMP_CLAUSE_SCHEDULE_SIMD(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_SCHEDULE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1774, __FUNCTION__))->base.public_flag) \ |
1775 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_SCHEDULE)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_SCHEDULE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1775, __FUNCTION__))->base.public_flag) |
1776 | |
1777 | #define OMP_CLAUSE_DEFAULT_KIND(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_DEFAULT), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1777, __FUNCTION__))->omp_clause.subcode.default_kind) \ |
1778 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_DEFAULT)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_DEFAULT), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1778, __FUNCTION__))->omp_clause.subcode.default_kind) |
1779 | |
1780 | #define OMP_CLAUSE_DEFAULTMAP_KIND(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_DEFAULTMAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1780, __FUNCTION__))->omp_clause.subcode.defaultmap_kind ) \ |
1781 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_DEFAULTMAP)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_DEFAULTMAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1781, __FUNCTION__))->omp_clause.subcode.defaultmap_kind) |
1782 | #define OMP_CLAUSE_DEFAULTMAP_CATEGORY(NODE)((enum omp_clause_defaultmap_kind) (((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_DEFAULTMAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1782, __FUNCTION__))->omp_clause.subcode.defaultmap_kind ) & OMP_CLAUSE_DEFAULTMAP_CATEGORY_MASK)) \ |
1783 | ((enum omp_clause_defaultmap_kind) \ |
1784 | (OMP_CLAUSE_DEFAULTMAP_KIND (NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_DEFAULTMAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1784, __FUNCTION__))->omp_clause.subcode.defaultmap_kind ) & OMP_CLAUSE_DEFAULTMAP_CATEGORY_MASK)) |
1785 | #define OMP_CLAUSE_DEFAULTMAP_BEHAVIOR(NODE)((enum omp_clause_defaultmap_kind) (((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_DEFAULTMAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1785, __FUNCTION__))->omp_clause.subcode.defaultmap_kind ) & OMP_CLAUSE_DEFAULTMAP_MASK)) \ |
1786 | ((enum omp_clause_defaultmap_kind) \ |
1787 | (OMP_CLAUSE_DEFAULTMAP_KIND (NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_DEFAULTMAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1787, __FUNCTION__))->omp_clause.subcode.defaultmap_kind ) & OMP_CLAUSE_DEFAULTMAP_MASK)) |
1788 | #define OMP_CLAUSE_DEFAULTMAP_SET_KIND(NODE, BEHAVIOR, CATEGORY)(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_DEFAULTMAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1788, __FUNCTION__))->omp_clause.subcode.defaultmap_kind ) = (enum omp_clause_defaultmap_kind) (CATEGORY | BEHAVIOR)) \ |
1789 | (OMP_CLAUSE_DEFAULTMAP_KIND (NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_DEFAULTMAP), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1789, __FUNCTION__))->omp_clause.subcode.defaultmap_kind ) \ |
1790 | = (enum omp_clause_defaultmap_kind) (CATEGORY | BEHAVIOR)) |
1791 | |
1792 | #define OMP_CLAUSE_BIND_KIND(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE_BIND), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1792, __FUNCTION__))->omp_clause.subcode.bind_kind) \ |
1793 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_BIND)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE_BIND), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1793, __FUNCTION__))->omp_clause.subcode.bind_kind) |
1794 | |
1795 | #define OMP_CLAUSE_TILE_LIST(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_TILE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1795, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1795, __FUNCTION__))) \ |
1796 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_TILE), 0)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_TILE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1796, __FUNCTION__))), (0), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1796, __FUNCTION__))) |
1797 | #define OMP_CLAUSE_TILE_ITERVAR(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_TILE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1797, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1797, __FUNCTION__))) \ |
1798 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_TILE), 1)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_TILE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1798, __FUNCTION__))), (1), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1798, __FUNCTION__))) |
1799 | #define OMP_CLAUSE_TILE_COUNT(NODE)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_TILE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1799, __FUNCTION__))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1799, __FUNCTION__))) \ |
1800 | OMP_CLAUSE_OPERAND (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE_TILE), 2)(*(omp_clause_elt_check (((omp_clause_subcode_check ((NODE), ( OMP_CLAUSE_TILE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1800, __FUNCTION__))), (2), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1800, __FUNCTION__))) |
1801 | |
1802 | /* _CONDTEMP_ holding temporary with iteration count. */ |
1803 | #define OMP_CLAUSE__CONDTEMP__ITER(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE__CONDTEMP_), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1803, __FUNCTION__))->base.public_flag) \ |
1804 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE__CONDTEMP_)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE__CONDTEMP_), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1804, __FUNCTION__))->base.public_flag) |
1805 | |
1806 | /* _SCANTEMP_ holding temporary with pointer to thread's local array; |
1807 | allocation. */ |
1808 | #define OMP_CLAUSE__SCANTEMP__ALLOC(NODE)((omp_clause_subcode_check ((NODE), (OMP_CLAUSE__SCANTEMP_), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1808, __FUNCTION__))->base.public_flag) \ |
1809 | (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE__SCANTEMP_)(omp_clause_subcode_check ((NODE), (OMP_CLAUSE__SCANTEMP_), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1809, __FUNCTION__))->base.public_flag) |
1810 | |
1811 | /* _SCANTEMP_ holding temporary with a control variable for deallocation; |
1812 | one boolean_type_node for test whether alloca was used, another one |
1813 | to pass to __builtin_stack_restore or free. */ |
1814 | #define OMP_CLAUSE__SCANTEMP__CONTROL(NODE)(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE__SCANTEMP_), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1814, __FUNCTION__)))->base.private_flag) \ |
1815 | TREE_PRIVATE (OMP_CLAUSE_SUBCODE_CHECK (NODE, OMP_CLAUSE__SCANTEMP_))(((omp_clause_subcode_check ((NODE), (OMP_CLAUSE__SCANTEMP_), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1815, __FUNCTION__)))->base.private_flag) |
1816 | |
1817 | /* SSA_NAME accessors. */ |
1818 | |
1819 | /* Whether SSA_NAME NODE is a virtual operand. This simply caches the |
1820 | information in the underlying SSA_NAME_VAR for efficiency. */ |
1821 | #define SSA_NAME_IS_VIRTUAL_OPERAND(NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1821, __FUNCTION__, (SSA_NAME)))->base.public_flag \ |
1822 | SSA_NAME_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1822, __FUNCTION__, (SSA_NAME)))->base.public_flag |
1823 | |
1824 | /* Returns the IDENTIFIER_NODE giving the SSA name a name or NULL_TREE |
1825 | if there is no name associated with it. */ |
1826 | #define SSA_NAME_IDENTIFIER(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1826, __FUNCTION__, (SSA_NAME)))->ssa_name.var != (tree) nullptr ? (((enum tree_code) ((NODE)->ssa_name.var)->base .code) == IDENTIFIER_NODE ? (NODE)->ssa_name.var : ((contains_struct_check (((NODE)->ssa_name.var), (TS_DECL_MINIMAL), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1826, __FUNCTION__))->decl_minimal.name)) : (tree) nullptr ) \ |
1827 | (SSA_NAME_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1827, __FUNCTION__, (SSA_NAME)))->ssa_name.var != NULL_TREE(tree) nullptr \ |
1828 | ? (TREE_CODE ((NODE)->ssa_name.var)((enum tree_code) ((NODE)->ssa_name.var)->base.code) == IDENTIFIER_NODE \ |
1829 | ? (NODE)->ssa_name.var \ |
1830 | : DECL_NAME ((NODE)->ssa_name.var)((contains_struct_check (((NODE)->ssa_name.var), (TS_DECL_MINIMAL ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1830, __FUNCTION__))->decl_minimal.name)) \ |
1831 | : NULL_TREE(tree) nullptr) |
1832 | |
1833 | /* Returns the variable being referenced. This can be NULL_TREE for |
1834 | temporaries not associated with any user variable. |
1835 | Once released, this is the only field that can be relied upon. */ |
1836 | #define SSA_NAME_VAR(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1836, __FUNCTION__, (SSA_NAME)))->ssa_name.var == (tree) nullptr || ((enum tree_code) ((NODE)->ssa_name.var)->base .code) == IDENTIFIER_NODE ? (tree) nullptr : (NODE)->ssa_name .var) \ |
1837 | (SSA_NAME_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1837, __FUNCTION__, (SSA_NAME)))->ssa_name.var == NULL_TREE(tree) nullptr \ |
1838 | || TREE_CODE ((NODE)->ssa_name.var)((enum tree_code) ((NODE)->ssa_name.var)->base.code) == IDENTIFIER_NODE \ |
1839 | ? NULL_TREE(tree) nullptr : (NODE)->ssa_name.var) |
1840 | |
1841 | #define SET_SSA_NAME_VAR_OR_IDENTIFIER(NODE,VAR)do { tree var_ = (VAR); (tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1841, __FUNCTION__, (SSA_NAME)))->ssa_name.var = var_; ( tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1841, __FUNCTION__, (SSA_NAME)))->base.public_flag = (var_ && ((enum tree_code) (var_)->base.code) == VAR_DECL && ((tree_check ((var_), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1841, __FUNCTION__, (VAR_DECL)))->base.u.bits.saturating_flag )); } while (0) \ |
1842 | do \ |
1843 | { \ |
1844 | tree var_ = (VAR); \ |
1845 | SSA_NAME_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1845, __FUNCTION__, (SSA_NAME)))->ssa_name.var = var_; \ |
1846 | SSA_NAME_IS_VIRTUAL_OPERAND (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1846, __FUNCTION__, (SSA_NAME)))->base.public_flag \ |
1847 | = (var_ \ |
1848 | && TREE_CODE (var_)((enum tree_code) (var_)->base.code) == VAR_DECL \ |
1849 | && VAR_DECL_IS_VIRTUAL_OPERAND (var_)((tree_check ((var_), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1849, __FUNCTION__, (VAR_DECL)))->base.u.bits.saturating_flag )); \ |
1850 | } \ |
1851 | while (0) |
1852 | |
1853 | /* Returns the statement which defines this SSA name. */ |
1854 | #define SSA_NAME_DEF_STMT(NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1854, __FUNCTION__, (SSA_NAME)))->ssa_name.def_stmt SSA_NAME_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1854, __FUNCTION__, (SSA_NAME)))->ssa_name.def_stmt |
1855 | |
1856 | /* Returns the SSA version number of this SSA name. Note that in |
1857 | tree SSA, version numbers are not per variable and may be recycled. */ |
1858 | #define SSA_NAME_VERSION(NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1858, __FUNCTION__, (SSA_NAME)))->base.u.version SSA_NAME_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1858, __FUNCTION__, (SSA_NAME)))->base.u.version |
1859 | |
1860 | /* Nonzero if this SSA name occurs in an abnormal PHI. SSA_NAMES are |
1861 | never output, so we can safely use the ASM_WRITTEN_FLAG for this |
1862 | status bit. */ |
1863 | #define SSA_NAME_OCCURS_IN_ABNORMAL_PHI(NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1863, __FUNCTION__, (SSA_NAME)))->base.asm_written_flag \ |
1864 | SSA_NAME_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1864, __FUNCTION__, (SSA_NAME)))->base.asm_written_flag |
1865 | |
1866 | /* Nonzero if this SSA_NAME expression is currently on the free list of |
1867 | SSA_NAMES. Using NOTHROW_FLAG seems reasonably safe since throwing |
1868 | has no meaning for an SSA_NAME. */ |
1869 | #define SSA_NAME_IN_FREE_LIST(NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1869, __FUNCTION__, (SSA_NAME)))->base.nothrow_flag \ |
1870 | SSA_NAME_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1870, __FUNCTION__, (SSA_NAME)))->base.nothrow_flag |
1871 | |
1872 | /* Nonzero if this SSA_NAME is the default definition for the |
1873 | underlying symbol. A default SSA name is created for symbol S if |
1874 | the very first reference to S in the function is a read operation. |
1875 | Default definitions are always created by an empty statement and |
1876 | belong to no basic block. */ |
1877 | #define SSA_NAME_IS_DEFAULT_DEF(NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1877, __FUNCTION__, (SSA_NAME)))->base.default_def_flag \ |
1878 | SSA_NAME_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1878, __FUNCTION__, (SSA_NAME)))->base.default_def_flag |
1879 | |
1880 | /* Nonzero if this SSA_NAME is known to point to memory that may not |
1881 | be written to. This is set for default defs of function parameters |
1882 | that have a corresponding r or R specification in the functions |
1883 | fn spec attribute. This is used by alias analysis. */ |
1884 | #define SSA_NAME_POINTS_TO_READONLY_MEMORY(NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1884, __FUNCTION__, (SSA_NAME)))->base.deprecated_flag \ |
1885 | SSA_NAME_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1885, __FUNCTION__, (SSA_NAME)))->base.deprecated_flag |
1886 | |
1887 | /* Attributes for SSA_NAMEs for pointer-type variables. */ |
1888 | #define SSA_NAME_PTR_INFO(N)(tree_check ((N), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1888, __FUNCTION__, (SSA_NAME)))->ssa_name.info.ptr_info \ |
1889 | SSA_NAME_CHECK (N)(tree_check ((N), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1889, __FUNCTION__, (SSA_NAME)))->ssa_name.info.ptr_info |
1890 | |
1891 | /* True if SSA_NAME_RANGE_INFO describes an anti-range. */ |
1892 | #define SSA_NAME_ANTI_RANGE_P(N)(tree_check ((N), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1892, __FUNCTION__, (SSA_NAME)))->base.static_flag \ |
1893 | SSA_NAME_CHECK (N)(tree_check ((N), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1893, __FUNCTION__, (SSA_NAME)))->base.static_flag |
1894 | |
1895 | /* The type of range described by SSA_NAME_RANGE_INFO. */ |
1896 | #define SSA_NAME_RANGE_TYPE(N)((tree_check ((N), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1896, __FUNCTION__, (SSA_NAME)))->base.static_flag ? VR_ANTI_RANGE : VR_RANGE) \ |
1897 | (SSA_NAME_ANTI_RANGE_P (N)(tree_check ((N), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1897, __FUNCTION__, (SSA_NAME)))->base.static_flag ? VR_ANTI_RANGE : VR_RANGE) |
1898 | |
1899 | /* Value range info attributes for SSA_NAMEs of non pointer-type variables. */ |
1900 | #define SSA_NAME_RANGE_INFO(N)(tree_check ((N), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1900, __FUNCTION__, (SSA_NAME)))->ssa_name.info.range_info \ |
1901 | SSA_NAME_CHECK (N)(tree_check ((N), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1901, __FUNCTION__, (SSA_NAME)))->ssa_name.info.range_info |
1902 | |
1903 | /* Return the immediate_use information for an SSA_NAME. */ |
1904 | #define SSA_NAME_IMM_USE_NODE(NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1904, __FUNCTION__, (SSA_NAME)))->ssa_name.imm_uses SSA_NAME_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1904, __FUNCTION__, (SSA_NAME)))->ssa_name.imm_uses |
1905 | |
1906 | #define OMP_CLAUSE_CODE(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1906, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.code \ |
1907 | (OMP_CLAUSE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1907, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.code |
1908 | |
1909 | #define OMP_CLAUSE_SET_CODE(NODE, CODE)(((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1909, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.code = ( CODE)) \ |
1910 | ((OMP_CLAUSE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1910, __FUNCTION__, (OMP_CLAUSE))))->omp_clause.code = (CODE)) |
1911 | |
1912 | #define OMP_CLAUSE_OPERAND(NODE, I)(*(omp_clause_elt_check ((NODE), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1912, __FUNCTION__))) \ |
1913 | OMP_CLAUSE_ELT_CHECK (NODE, I)(*(omp_clause_elt_check ((NODE), (I), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1913, __FUNCTION__))) |
1914 | |
1915 | /* In a BLOCK node. */ |
1916 | #define BLOCK_VARS(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1916, __FUNCTION__, (BLOCK)))->block.vars) (BLOCK_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1916, __FUNCTION__, (BLOCK)))->block.vars) |
1917 | #define BLOCK_NONLOCALIZED_VARS(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1917, __FUNCTION__, (BLOCK)))->block.nonlocalized_vars) \ |
1918 | (BLOCK_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1918, __FUNCTION__, (BLOCK)))->block.nonlocalized_vars) |
1919 | #define BLOCK_NUM_NONLOCALIZED_VARS(NODE)vec_safe_length (((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1919, __FUNCTION__, (BLOCK)))->block.nonlocalized_vars)) \ |
1920 | vec_safe_length (BLOCK_NONLOCALIZED_VARS (NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1920, __FUNCTION__, (BLOCK)))->block.nonlocalized_vars)) |
1921 | #define BLOCK_NONLOCALIZED_VAR(NODE,N)(*((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1921, __FUNCTION__, (BLOCK)))->block.nonlocalized_vars)) [N] (*BLOCK_NONLOCALIZED_VARS (NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1921, __FUNCTION__, (BLOCK)))->block.nonlocalized_vars))[N] |
1922 | #define BLOCK_SUBBLOCKS(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1922, __FUNCTION__, (BLOCK)))->block.subblocks) (BLOCK_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1922, __FUNCTION__, (BLOCK)))->block.subblocks) |
1923 | #define BLOCK_SUPERCONTEXT(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1923, __FUNCTION__, (BLOCK)))->block.supercontext) (BLOCK_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1923, __FUNCTION__, (BLOCK)))->block.supercontext) |
1924 | #define BLOCK_CHAIN(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1924, __FUNCTION__, (BLOCK)))->block.chain) (BLOCK_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1924, __FUNCTION__, (BLOCK)))->block.chain) |
1925 | #define BLOCK_ABSTRACT_ORIGIN(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1925, __FUNCTION__, (BLOCK)))->block.abstract_origin) (BLOCK_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1925, __FUNCTION__, (BLOCK)))->block.abstract_origin) |
1926 | #define BLOCK_ORIGIN(NODE)(((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1926, __FUNCTION__, (BLOCK)))->block.abstract_origin) ? ( (tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1926, __FUNCTION__, (BLOCK)))->block.abstract_origin) : ( NODE)) \ |
1927 | (BLOCK_ABSTRACT_ORIGIN(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1927, __FUNCTION__, (BLOCK)))->block.abstract_origin) ? BLOCK_ABSTRACT_ORIGIN(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1927, __FUNCTION__, (BLOCK)))->block.abstract_origin) : (NODE)) |
1928 | #define BLOCK_DIE(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1928, __FUNCTION__, (BLOCK)))->block.die) (BLOCK_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1928, __FUNCTION__, (BLOCK)))->block.die) |
1929 | |
1930 | /* True if BLOCK has the same ranges as its BLOCK_SUPERCONTEXT. */ |
1931 | #define BLOCK_SAME_RANGE(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1931, __FUNCTION__, (BLOCK)))->base.u.bits.nameless_flag ) (BLOCK_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1931, __FUNCTION__, (BLOCK)))->base.u.bits.nameless_flag) |
1932 | |
1933 | /* True if BLOCK appears in cold section. */ |
1934 | #define BLOCK_IN_COLD_SECTION_P(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1934, __FUNCTION__, (BLOCK)))->base.u.bits.atomic_flag) \ |
1935 | (BLOCK_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1935, __FUNCTION__, (BLOCK)))->base.u.bits.atomic_flag) |
1936 | |
1937 | /* An index number for this block. These values are not guaranteed to |
1938 | be unique across functions -- whether or not they are depends on |
1939 | the debugging output format in use. */ |
1940 | #define BLOCK_NUMBER(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1940, __FUNCTION__, (BLOCK)))->block.block_num) (BLOCK_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1940, __FUNCTION__, (BLOCK)))->block.block_num) |
1941 | |
1942 | /* If block reordering splits a lexical block into discontiguous |
1943 | address ranges, we'll make a copy of the original block. |
1944 | |
1945 | Note that this is logically distinct from BLOCK_ABSTRACT_ORIGIN. |
1946 | In that case, we have one source block that has been replicated |
1947 | (through inlining or unrolling) into many logical blocks, and that |
1948 | these logical blocks have different physical variables in them. |
1949 | |
1950 | In this case, we have one logical block split into several |
1951 | non-contiguous address ranges. Most debug formats can't actually |
1952 | represent this idea directly, so we fake it by creating multiple |
1953 | logical blocks with the same variables in them. However, for those |
1954 | that do support non-contiguous regions, these allow the original |
1955 | logical block to be reconstructed, along with the set of address |
1956 | ranges. |
1957 | |
1958 | One of the logical block fragments is arbitrarily chosen to be |
1959 | the ORIGIN. The other fragments will point to the origin via |
1960 | BLOCK_FRAGMENT_ORIGIN; the origin itself will have this pointer |
1961 | be null. The list of fragments will be chained through |
1962 | BLOCK_FRAGMENT_CHAIN from the origin. */ |
1963 | |
1964 | #define BLOCK_FRAGMENT_ORIGIN(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1964, __FUNCTION__, (BLOCK)))->block.fragment_origin) (BLOCK_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1964, __FUNCTION__, (BLOCK)))->block.fragment_origin) |
1965 | #define BLOCK_FRAGMENT_CHAIN(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1965, __FUNCTION__, (BLOCK)))->block.fragment_chain) (BLOCK_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1965, __FUNCTION__, (BLOCK)))->block.fragment_chain) |
1966 | |
1967 | /* For an inlined function, this gives the location where it was called |
1968 | from. This is only set in the top level block, which corresponds to the |
1969 | inlined function scope. This is used in the debug output routines. */ |
1970 | |
1971 | #define BLOCK_SOURCE_LOCATION(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1971, __FUNCTION__, (BLOCK)))->block.locus) (BLOCK_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1971, __FUNCTION__, (BLOCK)))->block.locus) |
1972 | |
1973 | /* This gives the location of the end of the block, useful to attach |
1974 | code implicitly generated for outgoing paths. */ |
1975 | |
1976 | #define BLOCK_SOURCE_END_LOCATION(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1976, __FUNCTION__, (BLOCK)))->block.end_locus) (BLOCK_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1976, __FUNCTION__, (BLOCK)))->block.end_locus) |
1977 | |
1978 | /* Define fields and accessors for nodes representing data types. */ |
1979 | |
1980 | /* See tree.def for documentation of the use of these fields. |
1981 | Look at the documentation of the various ..._TYPE tree codes. |
1982 | |
1983 | Note that the type.values, type.minval, and type.maxval fields are |
1984 | overloaded and used for different macros in different kinds of types. |
1985 | Each macro must check to ensure the tree node is of the proper kind of |
1986 | type. Note also that some of the front-ends also overload these fields, |
1987 | so they must be checked as well. */ |
1988 | |
1989 | #define TYPE_UID(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1989, __FUNCTION__))->type_common.uid) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1989, __FUNCTION__))->type_common.uid) |
1990 | /* Type size in bits as a tree expression. Need not be constant and may |
1991 | be greater than TYPE_SIZE for a C++ FIELD_DECL representing a base |
1992 | class subobject with its own virtual base classes (which are laid out |
1993 | separately). */ |
1994 | #define TYPE_SIZE(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1994, __FUNCTION__))->type_common.size) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1994, __FUNCTION__))->type_common.size) |
1995 | /* Likewise, type size in bytes. */ |
1996 | #define TYPE_SIZE_UNIT(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1996, __FUNCTION__))->type_common.size_unit) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1996, __FUNCTION__))->type_common.size_unit) |
1997 | #define TYPE_POINTER_TO(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1997, __FUNCTION__))->type_common.pointer_to) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1997, __FUNCTION__))->type_common.pointer_to) |
1998 | #define TYPE_REFERENCE_TO(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1998, __FUNCTION__))->type_common.reference_to) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1998, __FUNCTION__))->type_common.reference_to) |
1999 | #define TYPE_PRECISION(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1999, __FUNCTION__))->type_common.precision) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 1999, __FUNCTION__))->type_common.precision) |
2000 | #define TYPE_NAME(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2000, __FUNCTION__))->type_common.name) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2000, __FUNCTION__))->type_common.name) |
2001 | #define TYPE_NEXT_VARIANT(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2001, __FUNCTION__))->type_common.next_variant) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2001, __FUNCTION__))->type_common.next_variant) |
2002 | #define TYPE_MAIN_VARIANT(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2002, __FUNCTION__))->type_common.main_variant) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2002, __FUNCTION__))->type_common.main_variant) |
2003 | #define TYPE_CONTEXT(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2003, __FUNCTION__))->type_common.context) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2003, __FUNCTION__))->type_common.context) |
2004 | |
2005 | #define TYPE_MODE_RAW(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2005, __FUNCTION__))->type_common.mode) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2005, __FUNCTION__))->type_common.mode) |
2006 | #define TYPE_MODE(NODE)((((enum tree_code) ((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2006, __FUNCTION__)))->base.code) == VECTOR_TYPE) ? vector_type_mode (NODE) : (NODE)->type_common.mode) \ |
2007 | (VECTOR_TYPE_P (TYPE_CHECK (NODE))(((enum tree_code) ((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2007, __FUNCTION__)))->base.code) == VECTOR_TYPE) \ |
2008 | ? vector_type_mode (NODE) : (NODE)->type_common.mode) |
2009 | #define SCALAR_TYPE_MODE(NODE)(as_a <scalar_mode> ((tree_class_check ((NODE), (tcc_type ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2009, __FUNCTION__))->type_common.mode)) \ |
2010 | (as_a <scalar_mode> (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2010, __FUNCTION__))->type_common.mode)) |
2011 | #define SCALAR_INT_TYPE_MODE(NODE)(as_a <scalar_int_mode> ((tree_class_check ((NODE), (tcc_type ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2011, __FUNCTION__))->type_common.mode)) \ |
2012 | (as_a <scalar_int_mode> (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2012, __FUNCTION__))->type_common.mode)) |
2013 | #define SCALAR_FLOAT_TYPE_MODE(NODE)(as_a <scalar_float_mode> ((tree_class_check ((NODE), ( tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2013, __FUNCTION__))->type_common.mode)) \ |
2014 | (as_a <scalar_float_mode> (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2014, __FUNCTION__))->type_common.mode)) |
2015 | #define SET_TYPE_MODE(NODE, MODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2015, __FUNCTION__))->type_common.mode = (MODE)) \ |
2016 | (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2016, __FUNCTION__))->type_common.mode = (MODE)) |
2017 | |
2018 | extern machine_mode element_mode (const_tree); |
2019 | extern machine_mode vector_type_mode (const_tree); |
2020 | extern unsigned int vector_element_bits (const_tree); |
2021 | extern tree vector_element_bits_tree (const_tree); |
2022 | |
2023 | /* The "canonical" type for this type node, which is used by frontends to |
2024 | compare the type for equality with another type. If two types are |
2025 | equal (based on the semantics of the language), then they will have |
2026 | equivalent TYPE_CANONICAL entries. |
2027 | |
2028 | As a special case, if TYPE_CANONICAL is NULL_TREE, and thus |
2029 | TYPE_STRUCTURAL_EQUALITY_P is true, then it cannot |
2030 | be used for comparison against other types. Instead, the type is |
2031 | said to require structural equality checks, described in |
2032 | TYPE_STRUCTURAL_EQUALITY_P. |
2033 | |
2034 | For unqualified aggregate and function types the middle-end relies on |
2035 | TYPE_CANONICAL to tell whether two variables can be assigned |
2036 | to each other without a conversion. The middle-end also makes sure |
2037 | to assign the same alias-sets to the type partition with equal |
2038 | TYPE_CANONICAL of their unqualified variants. */ |
2039 | #define TYPE_CANONICAL(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2039, __FUNCTION__))->type_common.canonical) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2039, __FUNCTION__))->type_common.canonical) |
2040 | /* Indicates that the type node requires structural equality |
2041 | checks. The compiler will need to look at the composition of the |
2042 | type to determine whether it is equal to another type, rather than |
2043 | just comparing canonical type pointers. For instance, we would need |
2044 | to look at the return and parameter types of a FUNCTION_TYPE |
2045 | node. */ |
2046 | #define TYPE_STRUCTURAL_EQUALITY_P(NODE)(((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2046, __FUNCTION__))->type_common.canonical) == (tree) nullptr ) (TYPE_CANONICAL (NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2046, __FUNCTION__))->type_common.canonical) == NULL_TREE(tree) nullptr) |
2047 | /* Sets the TYPE_CANONICAL field to NULL_TREE, indicating that the |
2048 | type node requires structural equality. */ |
2049 | #define SET_TYPE_STRUCTURAL_EQUALITY(NODE)(((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2049, __FUNCTION__))->type_common.canonical) = (tree) nullptr ) (TYPE_CANONICAL (NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2049, __FUNCTION__))->type_common.canonical) = NULL_TREE(tree) nullptr) |
2050 | |
2051 | #define TYPE_IBIT(NODE)(mode_ibit[((((enum tree_code) ((tree_class_check ((NODE), (tcc_type ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2051, __FUNCTION__)))->base.code) == VECTOR_TYPE) ? vector_type_mode (NODE) : (NODE)->type_common.mode)]) (GET_MODE_IBIT (TYPE_MODE (NODE))mode_ibit[((((enum tree_code) ((tree_class_check ((NODE), (tcc_type ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2051, __FUNCTION__)))->base.code) == VECTOR_TYPE) ? vector_type_mode (NODE) : (NODE)->type_common.mode)]) |
2052 | #define TYPE_FBIT(NODE)(mode_fbit[((((enum tree_code) ((tree_class_check ((NODE), (tcc_type ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2052, __FUNCTION__)))->base.code) == VECTOR_TYPE) ? vector_type_mode (NODE) : (NODE)->type_common.mode)]) (GET_MODE_FBIT (TYPE_MODE (NODE))mode_fbit[((((enum tree_code) ((tree_class_check ((NODE), (tcc_type ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2052, __FUNCTION__)))->base.code) == VECTOR_TYPE) ? vector_type_mode (NODE) : (NODE)->type_common.mode)]) |
2053 | |
2054 | /* The (language-specific) typed-based alias set for this type. |
2055 | Objects whose TYPE_ALIAS_SETs are different cannot alias each |
2056 | other. If the TYPE_ALIAS_SET is -1, no alias set has yet been |
2057 | assigned to this type. If the TYPE_ALIAS_SET is 0, objects of this |
2058 | type can alias objects of any type. */ |
2059 | #define TYPE_ALIAS_SET(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2059, __FUNCTION__))->type_common.alias_set) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2059, __FUNCTION__))->type_common.alias_set) |
2060 | |
2061 | /* Nonzero iff the typed-based alias set for this type has been |
2062 | calculated. */ |
2063 | #define TYPE_ALIAS_SET_KNOWN_P(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2063, __FUNCTION__))->type_common.alias_set != -1) \ |
2064 | (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2064, __FUNCTION__))->type_common.alias_set != -1) |
2065 | |
2066 | /* A TREE_LIST of IDENTIFIER nodes of the attributes that apply |
2067 | to this type. */ |
2068 | #define TYPE_ATTRIBUTES(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2068, __FUNCTION__))->type_common.attributes) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2068, __FUNCTION__))->type_common.attributes) |
2069 | |
2070 | /* The alignment necessary for objects of this type. |
2071 | The value is an int, measured in bits and must be a power of two. |
2072 | We support also an "alignment" of zero. */ |
2073 | #define TYPE_ALIGN(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2073, __FUNCTION__))->type_common.align ? ((unsigned)1) << ((NODE)->type_common.align - 1) : 0) \ |
2074 | (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2074, __FUNCTION__))->type_common.align \ |
2075 | ? ((unsigned)1) << ((NODE)->type_common.align - 1) : 0) |
2076 | |
2077 | /* Specify that TYPE_ALIGN(NODE) is X. */ |
2078 | #define SET_TYPE_ALIGN(NODE, X)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2078, __FUNCTION__))->type_common.align = ffs_hwi (X)) \ |
2079 | (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2079, __FUNCTION__))->type_common.align = ffs_hwi (X)) |
2080 | |
2081 | /* 1 if the alignment for this type was requested by "aligned" attribute, |
2082 | 0 if it is the default for this type. */ |
2083 | #define TYPE_USER_ALIGN(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2083, __FUNCTION__))->base.u.bits.user_align) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2083, __FUNCTION__))->base.u.bits.user_align) |
2084 | |
2085 | /* The alignment for NODE, in bytes. */ |
2086 | #define TYPE_ALIGN_UNIT(NODE)(((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2086, __FUNCTION__))->type_common.align ? ((unsigned)1) << ((NODE)->type_common.align - 1) : 0) / (8)) (TYPE_ALIGN (NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2086, __FUNCTION__))->type_common.align ? ((unsigned)1) << ((NODE)->type_common.align - 1) : 0) / BITS_PER_UNIT(8)) |
2087 | |
2088 | /* The minimum alignment necessary for objects of this type without |
2089 | warning. The value is an int, measured in bits. */ |
2090 | #define TYPE_WARN_IF_NOT_ALIGN(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2090, __FUNCTION__))->type_common.warn_if_not_align ? (( unsigned)1) << ((NODE)->type_common.warn_if_not_align - 1) : 0) \ |
2091 | (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2091, __FUNCTION__))->type_common.warn_if_not_align \ |
2092 | ? ((unsigned)1) << ((NODE)->type_common.warn_if_not_align - 1) : 0) |
2093 | |
2094 | /* Specify that TYPE_WARN_IF_NOT_ALIGN(NODE) is X. */ |
2095 | #define SET_TYPE_WARN_IF_NOT_ALIGN(NODE, X)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2095, __FUNCTION__))->type_common.warn_if_not_align = ffs_hwi (X)) \ |
2096 | (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2096, __FUNCTION__))->type_common.warn_if_not_align = ffs_hwi (X)) |
2097 | |
2098 | /* If your language allows you to declare types, and you want debug info |
2099 | for them, then you need to generate corresponding TYPE_DECL nodes. |
2100 | These "stub" TYPE_DECL nodes have no name, and simply point at the |
2101 | type node. You then set the TYPE_STUB_DECL field of the type node |
2102 | to point back at the TYPE_DECL node. This allows the debug routines |
2103 | to know that the two nodes represent the same type, so that we only |
2104 | get one debug info record for them. */ |
2105 | #define TYPE_STUB_DECL(NODE)(((contains_struct_check (((tree_class_check ((NODE), (tcc_type ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2105, __FUNCTION__))), (TS_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2105, __FUNCTION__))->common.chain)) (TREE_CHAIN (TYPE_CHECK (NODE))((contains_struct_check (((tree_class_check ((NODE), (tcc_type ), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2105, __FUNCTION__))), (TS_COMMON), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2105, __FUNCTION__))->common.chain)) |
2106 | |
2107 | /* In a RECORD_TYPE, UNION_TYPE, QUAL_UNION_TYPE or ARRAY_TYPE, it means |
2108 | the type has BLKmode only because it lacks the alignment required for |
2109 | its size. */ |
2110 | #define TYPE_NO_FORCE_BLK(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2110, __FUNCTION__))->type_common.no_force_blk_flag) \ |
2111 | (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2111, __FUNCTION__))->type_common.no_force_blk_flag) |
2112 | |
2113 | /* Nonzero in a type considered volatile as a whole. */ |
2114 | #define TYPE_VOLATILE(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2114, __FUNCTION__))->base.volatile_flag) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2114, __FUNCTION__))->base.volatile_flag) |
2115 | |
2116 | /* Nonzero in a type considered atomic as a whole. */ |
2117 | #define TYPE_ATOMIC(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2117, __FUNCTION__))->base.u.bits.atomic_flag) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2117, __FUNCTION__))->base.u.bits.atomic_flag) |
2118 | |
2119 | /* Means this type is const-qualified. */ |
2120 | #define TYPE_READONLY(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2120, __FUNCTION__))->base.readonly_flag) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2120, __FUNCTION__))->base.readonly_flag) |
2121 | |
2122 | /* If nonzero, this type is `restrict'-qualified, in the C sense of |
2123 | the term. */ |
2124 | #define TYPE_RESTRICT(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2124, __FUNCTION__))->type_common.restrict_flag) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2124, __FUNCTION__))->type_common.restrict_flag) |
2125 | |
2126 | /* If nonzero, type's name shouldn't be emitted into debug info. */ |
2127 | #define TYPE_NAMELESS(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2127, __FUNCTION__))->base.u.bits.nameless_flag) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2127, __FUNCTION__))->base.u.bits.nameless_flag) |
2128 | |
2129 | /* The address space the type is in. */ |
2130 | #define TYPE_ADDR_SPACE(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2130, __FUNCTION__))->base.u.bits.address_space) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2130, __FUNCTION__))->base.u.bits.address_space) |
2131 | |
2132 | /* Encode/decode the named memory support as part of the qualifier. If more |
2133 | than 8 qualifiers are added, these macros need to be adjusted. */ |
2134 | #define ENCODE_QUAL_ADDR_SPACE(NUM)((NUM & 0xFF) << 8) ((NUM & 0xFF) << 8) |
2135 | #define DECODE_QUAL_ADDR_SPACE(X)(((X) >> 8) & 0xFF) (((X) >> 8) & 0xFF) |
2136 | |
2137 | /* Return all qualifiers except for the address space qualifiers. */ |
2138 | #define CLEAR_QUAL_ADDR_SPACE(X)((X) & ~0xFF00) ((X) & ~0xFF00) |
2139 | |
2140 | /* Only keep the address space out of the qualifiers and discard the other |
2141 | qualifiers. */ |
2142 | #define KEEP_QUAL_ADDR_SPACE(X)((X) & 0xFF00) ((X) & 0xFF00) |
2143 | |
2144 | /* The set of type qualifiers for this type. */ |
2145 | #define TYPE_QUALS(NODE)((int) ((((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2145, __FUNCTION__))->base.readonly_flag) * TYPE_QUAL_CONST ) | (((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2145, __FUNCTION__))->base.volatile_flag) * TYPE_QUAL_VOLATILE ) | (((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2145, __FUNCTION__))->base.u.bits.atomic_flag) * TYPE_QUAL_ATOMIC ) | (((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2145, __FUNCTION__))->type_common.restrict_flag) * TYPE_QUAL_RESTRICT ) | (((((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2145, __FUNCTION__))->base.u.bits.address_space) & 0xFF ) << 8)))) \ |
2146 | ((int) ((TYPE_READONLY (NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2146, __FUNCTION__))->base.readonly_flag) * TYPE_QUAL_CONST) \ |
2147 | | (TYPE_VOLATILE (NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2147, __FUNCTION__))->base.volatile_flag) * TYPE_QUAL_VOLATILE) \ |
2148 | | (TYPE_ATOMIC (NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2148, __FUNCTION__))->base.u.bits.atomic_flag) * TYPE_QUAL_ATOMIC) \ |
2149 | | (TYPE_RESTRICT (NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2149, __FUNCTION__))->type_common.restrict_flag) * TYPE_QUAL_RESTRICT) \ |
2150 | | (ENCODE_QUAL_ADDR_SPACE (TYPE_ADDR_SPACE (NODE))((((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2150, __FUNCTION__))->base.u.bits.address_space) & 0xFF ) << 8)))) |
2151 | |
2152 | /* The same as TYPE_QUALS without the address space qualifications. */ |
2153 | #define TYPE_QUALS_NO_ADDR_SPACE(NODE)((int) ((((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2153, __FUNCTION__))->base.readonly_flag) * TYPE_QUAL_CONST ) | (((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2153, __FUNCTION__))->base.volatile_flag) * TYPE_QUAL_VOLATILE ) | (((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2153, __FUNCTION__))->base.u.bits.atomic_flag) * TYPE_QUAL_ATOMIC ) | (((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2153, __FUNCTION__))->type_common.restrict_flag) * TYPE_QUAL_RESTRICT ))) \ |
2154 | ((int) ((TYPE_READONLY (NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2154, __FUNCTION__))->base.readonly_flag) * TYPE_QUAL_CONST) \ |
2155 | | (TYPE_VOLATILE (NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2155, __FUNCTION__))->base.volatile_flag) * TYPE_QUAL_VOLATILE) \ |
2156 | | (TYPE_ATOMIC (NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2156, __FUNCTION__))->base.u.bits.atomic_flag) * TYPE_QUAL_ATOMIC) \ |
2157 | | (TYPE_RESTRICT (NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2157, __FUNCTION__))->type_common.restrict_flag) * TYPE_QUAL_RESTRICT))) |
2158 | |
2159 | /* The same as TYPE_QUALS without the address space and atomic |
2160 | qualifications. */ |
2161 | #define TYPE_QUALS_NO_ADDR_SPACE_NO_ATOMIC(NODE)((int) ((((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2161, __FUNCTION__))->base.readonly_flag) * TYPE_QUAL_CONST ) | (((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2161, __FUNCTION__))->base.volatile_flag) * TYPE_QUAL_VOLATILE ) | (((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2161, __FUNCTION__))->type_common.restrict_flag) * TYPE_QUAL_RESTRICT ))) \ |
2162 | ((int) ((TYPE_READONLY (NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2162, __FUNCTION__))->base.readonly_flag) * TYPE_QUAL_CONST) \ |
2163 | | (TYPE_VOLATILE (NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2163, __FUNCTION__))->base.volatile_flag) * TYPE_QUAL_VOLATILE) \ |
2164 | | (TYPE_RESTRICT (NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2164, __FUNCTION__))->type_common.restrict_flag) * TYPE_QUAL_RESTRICT))) |
2165 | |
2166 | /* These flags are available for each language front end to use internally. */ |
2167 | #define TYPE_LANG_FLAG_0(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2167, __FUNCTION__))->type_common.lang_flag_0) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2167, __FUNCTION__))->type_common.lang_flag_0) |
2168 | #define TYPE_LANG_FLAG_1(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2168, __FUNCTION__))->type_common.lang_flag_1) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2168, __FUNCTION__))->type_common.lang_flag_1) |
2169 | #define TYPE_LANG_FLAG_2(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2169, __FUNCTION__))->type_common.lang_flag_2) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2169, __FUNCTION__))->type_common.lang_flag_2) |
2170 | #define TYPE_LANG_FLAG_3(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2170, __FUNCTION__))->type_common.lang_flag_3) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2170, __FUNCTION__))->type_common.lang_flag_3) |
2171 | #define TYPE_LANG_FLAG_4(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2171, __FUNCTION__))->type_common.lang_flag_4) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2171, __FUNCTION__))->type_common.lang_flag_4) |
2172 | #define TYPE_LANG_FLAG_5(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2172, __FUNCTION__))->type_common.lang_flag_5) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2172, __FUNCTION__))->type_common.lang_flag_5) |
2173 | #define TYPE_LANG_FLAG_6(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2173, __FUNCTION__))->type_common.lang_flag_6) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2173, __FUNCTION__))->type_common.lang_flag_6) |
2174 | #define TYPE_LANG_FLAG_7(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2174, __FUNCTION__))->type_common.lang_flag_7) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2174, __FUNCTION__))->type_common.lang_flag_7) |
2175 | |
2176 | /* Used to keep track of visited nodes in tree traversals. This is set to |
2177 | 0 by copy_node and make_node. */ |
2178 | #define TREE_VISITED(NODE)((NODE)->base.visited) ((NODE)->base.visited) |
2179 | |
2180 | /* If set in an ARRAY_TYPE, indicates a string type (for languages |
2181 | that distinguish string from array of char). |
2182 | If set in a INTEGER_TYPE, indicates a character type. */ |
2183 | #define TYPE_STRING_FLAG(NODE)((tree_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2183, __FUNCTION__, (ARRAY_TYPE), (INTEGER_TYPE)))->type_common .string_flag) \ |
2184 | (ARRAY_OR_INTEGER_TYPE_CHECK (NODE)(tree_check2 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2184, __FUNCTION__, (ARRAY_TYPE), (INTEGER_TYPE)))->type_common.string_flag) |
2185 | |
2186 | /* If set for RECORD_TYPE or UNION_TYPE it indicates that the type conforms |
2187 | to the C++ one definition rule. This is used for LTO canonical type |
2188 | computation. */ |
2189 | #define TYPE_CXX_ODR_P(NODE)((tree_check3 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2189, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE )))->type_common.string_flag) \ |
2190 | (RECORD_OR_UNION_CHECK (NODE)(tree_check3 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2190, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE )))->type_common.string_flag) |
2191 | |
2192 | /* Nonzero in a VECTOR_TYPE if the frontends should not emit warnings |
2193 | about missing conversions to other vector types of the same size. */ |
2194 | #define TYPE_VECTOR_OPAQUE(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2194, __FUNCTION__, (VECTOR_TYPE)))->base.default_def_flag ) \ |
2195 | (VECTOR_TYPE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2195, __FUNCTION__, (VECTOR_TYPE)))->base.default_def_flag) |
2196 | |
2197 | /* Indicates that objects of this type must be initialized by calling a |
2198 | function when they are created. */ |
2199 | #define TYPE_NEEDS_CONSTRUCTING(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2199, __FUNCTION__))->type_common.needs_constructing_flag ) \ |
2200 | (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2200, __FUNCTION__))->type_common.needs_constructing_flag) |
2201 | |
2202 | /* Indicates that a UNION_TYPE object should be passed the same way that |
2203 | the first union alternative would be passed, or that a RECORD_TYPE |
2204 | object should be passed the same way that the first (and only) member |
2205 | would be passed. */ |
2206 | #define TYPE_TRANSPARENT_AGGR(NODE)((tree_check3 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2206, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE )))->type_common.transparent_aggr_flag) \ |
2207 | (RECORD_OR_UNION_CHECK (NODE)(tree_check3 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2207, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE )))->type_common.transparent_aggr_flag) |
2208 | |
2209 | /* For an ARRAY_TYPE, indicates that it is not permitted to take the |
2210 | address of a component of the type. This is the counterpart of |
2211 | DECL_NONADDRESSABLE_P for arrays, see the definition of this flag. */ |
2212 | #define TYPE_NONALIASED_COMPONENT(NODE)((tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2212, __FUNCTION__, (ARRAY_TYPE)))->type_common.transparent_aggr_flag ) \ |
2213 | (ARRAY_TYPE_CHECK (NODE)(tree_check ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2213, __FUNCTION__, (ARRAY_TYPE)))->type_common.transparent_aggr_flag) |
2214 | |
2215 | /* For an ARRAY_TYPE, a RECORD_TYPE, a UNION_TYPE or a QUAL_UNION_TYPE |
2216 | whether the array is typeless storage or the type contains a member |
2217 | with this flag set. Such types are exempt from type-based alias |
2218 | analysis. For ARRAY_TYPEs with AGGREGATE_TYPE_P element types |
2219 | the flag should be inherited from the element type, can change |
2220 | when type is finalized and because of that should not be used in |
2221 | type hashing. For ARRAY_TYPEs with non-AGGREGATE_TYPE_P element types |
2222 | the flag should not be changed after the array is created and should |
2223 | be used in type hashing. */ |
2224 | #define TYPE_TYPELESS_STORAGE(NODE)((tree_check4 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2224, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE ), (ARRAY_TYPE)))->type_common.typeless_storage) \ |
2225 | (TREE_CHECK4 (NODE, RECORD_TYPE, UNION_TYPE, QUAL_UNION_TYPE, \(tree_check4 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2226, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE ), (ARRAY_TYPE))) |
2226 | ARRAY_TYPE)(tree_check4 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2226, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE ), (ARRAY_TYPE)))->type_common.typeless_storage) |
2227 | |
2228 | /* Indicated that objects of this type should be laid out in as |
2229 | compact a way as possible. */ |
2230 | #define TYPE_PACKED(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2230, __FUNCTION__))->base.u.bits.packed_flag) (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2230, __FUNCTION__))->base.u.bits.packed_flag) |
2231 | |
2232 | /* Used by type_contains_placeholder_p to avoid recomputation. |
2233 | Values are: 0 (unknown), 1 (false), 2 (true). Never access |
2234 | this field directly. */ |
2235 | #define TYPE_CONTAINS_PLACEHOLDER_INTERNAL(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2235, __FUNCTION__))->type_common.contains_placeholder_bits ) \ |
2236 | (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2236, __FUNCTION__))->type_common.contains_placeholder_bits) |
2237 | |
2238 | /* Nonzero if RECORD_TYPE represents a final derivation of class. */ |
2239 | #define TYPE_FINAL_P(NODE)((tree_check3 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2239, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE )))->base.default_def_flag) \ |
2240 | (RECORD_OR_UNION_CHECK (NODE)(tree_check3 ((NODE), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2240, __FUNCTION__, (RECORD_TYPE), (UNION_TYPE), (QUAL_UNION_TYPE )))->base.default_def_flag) |
2241 | |
2242 | /* The debug output functions use the symtab union field to store |
2243 | information specific to the debugging format. The different debug |
2244 | output hooks store different types in the union field. These three |
2245 | macros are used to access different fields in the union. The debug |
2246 | hooks are responsible for consistently using only a specific |
2247 | macro. */ |
2248 | |
2249 | /* Symtab field as an integer. Used by stabs generator in dbxout.c to |
2250 | hold the type's number in the generated stabs. */ |
2251 | #define TYPE_SYMTAB_ADDRESS(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2251, __FUNCTION__))->type_common.symtab.address) \ |
2252 | (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2252, __FUNCTION__))->type_common.symtab.address) |
2253 | |
2254 | /* Symtab field as a pointer to a DWARF DIE. Used by DWARF generator |
2255 | in dwarf2out.c to point to the DIE generated for the type. */ |
2256 | #define TYPE_SYMTAB_DIE(NODE)((tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2256, __FUNCTION__))->type_common.symtab.die) \ |
2257 | (TYPE_CHECK (NODE)(tree_class_check ((NODE), (tcc_type), "/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/tree.h" , 2257, __FUNCTION__))->type_common.symtab.die) |
2258 | |
2259 | /* The garbage collector needs to know the interpretation of the |
2260 | symtab field. These constants represent the different types in the |
2261 | union. */ |
2262 | |
2263 | #define TYPE_SYMTAB_IS_ADDRESS(0) (0) |