1 // generated by gen-nodes from `../freehdl/fire-chunk.t'.  Do not edit.
2 
3 #include <freehdl/fire-chunk.h>
4 tree_ctype_info IR_StaticLevel_ctype_info = {
5   -1,
6   "IR_StaticLevel",
7   fire_print_int,
8 };
9 tree_ctype_info IR_DelayMechanism_ctype_info = {
10   -1,
11   "IR_DelayMechanism",
12   fire_print_int,
13 };
14 tree_ctype_info IR_Direction_ctype_info = {
15   -1,
16   "IR_Direction",
17   fire_print_int,
18 };
19 tree_ctype_info IR_Pure_ctype_info = {
20   -1,
21   "IR_Pure",
22   fire_print_int,
23 };
24 tree_ctype_info IR_Mode_ctype_info = {
25   -1,
26   "IR_Mode",
27   fire_print_int,
28 };
29 tree_ctype_info IR_SignalKind_ctype_info = {
30   -1,
31   "IR_SignalKind",
32   fire_print_int,
33 };
34 tree_ctype_info IR_String_ctype_info = {
35   -1,
36   "IR_String",
37   fire_print_IR_String,
38 };
39 tree_ctype_info IR_Character_ctype_info = {
40   -1,
41   "IR_Character",
42   NULL,
43 };
44 tree_ctype_info IR_Kind_ctype_info = {
45   -1,
46   "IR_Kind",
47   NULL,
48 };
49 tree_ctype_info int_ctype_info = {
50   -1,
51   "int",
52   fire_print_int,
53 };
54 tree_ctype_info bool_ctype_info = {
55   -1,
56   "bool",
57   fire_print_bool,
58 };
59 tree_ctype_info fire_string_ctype_info = {
60   -1,
61   "fire_string",
62   fire_print_string,
63 };
64 
65 static tree_slot_info IIR_Root_slot_info[] = {
66   { IR_POS_INFO, "pos", (tree_base_node*tree_base_node::*)&IIR_Root::pos },
67 };
68 
69 tree_kind_info IR_ROOT_kind_info = {
70   0,
71   "IIR_Root",
72   &fire_chunk_info,
73   0,
74   IR_SIGNATURE,
75   0,
76   1, 1, IIR_Root_slot_info,
77   sizeof(IIR_Root)
78 };
79 
80 static tree_slot_info IIR_SequentialStatement_slot_info[] = {
81   { IR_LABEL, "label", (tree_base_node*tree_base_node::*)&IIR_SequentialStatement::label },
82 };
83 
84 tree_kind_info IR_SEQUENTIAL_STATEMENT_kind_info = {
85   1,
86   "IIR_SequentialStatement",
87   &fire_chunk_info,
88   IR_ROOT,
89   IR_WAIT_STATEMENT,
90   0,
91   1, 1, IIR_SequentialStatement_slot_info,
92   sizeof(IIR_SequentialStatement)
93 };
94 
95 static tree_slot_info IIR_NullStatement_slot_info[] = {
96 };
97 
98 tree_kind_info IR_NULL_STATEMENT_kind_info = {
99   2,
100   "IIR_NullStatement",
101   &fire_chunk_info,
102   IR_SEQUENTIAL_STATEMENT,
103   IR_NULL_STATEMENT,
104   0,
105   0, 0, IIR_NullStatement_slot_info,
106   sizeof(IIR_NullStatement)
107 };
108 
109 static tree_slot_info IIR_ReturnStatement_slot_info[] = {
110   { IR_SUBPROGRAM_DECLARATION, "enclosing_subprogram", (tree_base_node*tree_base_node::*)&IIR_ReturnStatement::enclosing_subprogram },
111   { IR_EXPRESSION, "return_expression", (tree_base_node*tree_base_node::*)&IIR_ReturnStatement::return_expression },
112 };
113 
114 tree_kind_info IR_RETURN_STATEMENT_kind_info = {
115   3,
116   "IIR_ReturnStatement",
117   &fire_chunk_info,
118   IR_SEQUENTIAL_STATEMENT,
119   IR_RETURN_STATEMENT,
120   0,
121   2, 2, IIR_ReturnStatement_slot_info,
122   sizeof(IIR_ReturnStatement)
123 };
124 
125 static tree_slot_info IIR_LoopControlStatement_slot_info[] = {
126   { IR_LOOP_STATEMENT, "loop", (tree_base_node*tree_base_node::*)&IIR_LoopControlStatement::loop },
127   { IR_EXPRESSION, "condition", (tree_base_node*tree_base_node::*)&IIR_LoopControlStatement::condition },
128 };
129 
130 tree_kind_info IR_LOOP_CONTROL_STATEMENT_kind_info = {
131   4,
132   "IIR_LoopControlStatement",
133   &fire_chunk_info,
134   IR_SEQUENTIAL_STATEMENT,
135   IR_NEXT_STATEMENT,
136   0,
137   2, 2, IIR_LoopControlStatement_slot_info,
138   sizeof(IIR_LoopControlStatement)
139 };
140 
141 static tree_slot_info IIR_ExitStatement_slot_info[] = {
142 };
143 
144 tree_kind_info IR_EXIT_STATEMENT_kind_info = {
145   5,
146   "IIR_ExitStatement",
147   &fire_chunk_info,
148   IR_LOOP_CONTROL_STATEMENT,
149   IR_EXIT_STATEMENT,
150   0,
151   0, 0, IIR_ExitStatement_slot_info,
152   sizeof(IIR_ExitStatement)
153 };
154 
155 static tree_slot_info IIR_NextStatement_slot_info[] = {
156 };
157 
158 tree_kind_info IR_NEXT_STATEMENT_kind_info = {
159   6,
160   "IIR_NextStatement",
161   &fire_chunk_info,
162   IR_LOOP_CONTROL_STATEMENT,
163   IR_NEXT_STATEMENT,
164   0,
165   0, 0, IIR_NextStatement_slot_info,
166   sizeof(IIR_NextStatement)
167 };
168 
169 static tree_slot_info IIR_LoopStatement_slot_info[] = {
170   { IR_SEQUENTIAL_STATEMENT_LIST, "sequence_of_statements", (tree_base_node*tree_base_node::*)&IIR_LoopStatement::sequence_of_statements },
171   { IR_LOOP_DECLARATIVE_REGION, "declarative_region", (tree_base_node*tree_base_node::*)&IIR_LoopStatement::declarative_region },
172 };
173 
174 tree_kind_info IR_LOOP_STATEMENT_kind_info = {
175   7,
176   "IIR_LoopStatement",
177   &fire_chunk_info,
178   IR_SEQUENTIAL_STATEMENT,
179   IR_FOR_LOOP_STATEMENT,
180   0,
181   2, 2, IIR_LoopStatement_slot_info,
182   sizeof(IIR_LoopStatement)
183 };
184 
185 static tree_slot_info IIR_WhileLoopStatement_slot_info[] = {
186   { IR_EXPRESSION, "condition", (tree_base_node*tree_base_node::*)&IIR_WhileLoopStatement::condition },
187 };
188 
189 tree_kind_info IR_WHILE_LOOP_STATEMENT_kind_info = {
190   8,
191   "IIR_WhileLoopStatement",
192   &fire_chunk_info,
193   IR_LOOP_STATEMENT,
194   IR_WHILE_LOOP_STATEMENT,
195   0,
196   1, 1, IIR_WhileLoopStatement_slot_info,
197   sizeof(IIR_WhileLoopStatement)
198 };
199 
200 static tree_slot_info IIR_ForLoopStatement_slot_info[] = {
201   { IR_CONSTANT_DECLARATION, "iterator", (tree_base_node*tree_base_node::*)&IIR_ForLoopStatement::iterator },
202 };
203 
204 tree_kind_info IR_FOR_LOOP_STATEMENT_kind_info = {
205   9,
206   "IIR_ForLoopStatement",
207   &fire_chunk_info,
208   IR_LOOP_STATEMENT,
209   IR_FOR_LOOP_STATEMENT,
210   0,
211   1, 1, IIR_ForLoopStatement_slot_info,
212   sizeof(IIR_ForLoopStatement)
213 };
214 
215 static tree_slot_info IIR_CaseStatement_slot_info[] = {
216   { IR_EXPRESSION, "expression", (tree_base_node*tree_base_node::*)&IIR_CaseStatement::expression },
217   { IR_CASE_STATEMENT_ALTERNATIVE_LIST, "case_statement_alternatives", (tree_base_node*tree_base_node::*)&IIR_CaseStatement::case_statement_alternatives },
218 };
219 
220 tree_kind_info IR_CASE_STATEMENT_kind_info = {
221   10,
222   "IIR_CaseStatement",
223   &fire_chunk_info,
224   IR_SEQUENTIAL_STATEMENT,
225   IR_CASE_STATEMENT,
226   0,
227   2, 2, IIR_CaseStatement_slot_info,
228   sizeof(IIR_CaseStatement)
229 };
230 
231 static tree_slot_info IIR_IfStatement_slot_info[] = {
232   { IR_EXPRESSION, "condition", (tree_base_node*tree_base_node::*)&IIR_IfStatement::condition },
233   { IR_SEQUENTIAL_STATEMENT_LIST, "then_sequence", (tree_base_node*tree_base_node::*)&IIR_IfStatement::then_sequence },
234   { IR_SEQUENTIAL_STATEMENT_LIST, "else_sequence", (tree_base_node*tree_base_node::*)&IIR_IfStatement::else_sequence },
235 };
236 
237 tree_kind_info IR_IF_STATEMENT_kind_info = {
238   11,
239   "IIR_IfStatement",
240   &fire_chunk_info,
241   IR_SEQUENTIAL_STATEMENT,
242   IR_IF_STATEMENT,
243   0,
244   3, 3, IIR_IfStatement_slot_info,
245   sizeof(IIR_IfStatement)
246 };
247 
248 static tree_slot_info IIR_ProcedureCallStatement_slot_info[] = {
249   { IR_PROCEDURE_DECLARATION, "procedure", (tree_base_node*tree_base_node::*)&IIR_ProcedureCallStatement::procedure },
250   { IR_ASSOCIATION_LIST, "actual_parameter_part", (tree_base_node*tree_base_node::*)&IIR_ProcedureCallStatement::actual_parameter_part },
251 };
252 
253 tree_kind_info IR_PROCEDURE_CALL_STATEMENT_kind_info = {
254   12,
255   "IIR_ProcedureCallStatement",
256   &fire_chunk_info,
257   IR_SEQUENTIAL_STATEMENT,
258   IR_PROCEDURE_CALL_STATEMENT,
259   0,
260   2, 2, IIR_ProcedureCallStatement_slot_info,
261   sizeof(IIR_ProcedureCallStatement)
262 };
263 
264 static tree_slot_info IIR_VariableAssignmentStatement_slot_info[] = {
265   { IR_EXPRESSION, "target", (tree_base_node*tree_base_node::*)&IIR_VariableAssignmentStatement::target },
266   { IR_EXPRESSION, "expression", (tree_base_node*tree_base_node::*)&IIR_VariableAssignmentStatement::expression },
267 };
268 
269 tree_kind_info IR_VARIABLE_ASSIGNMENT_STATEMENT_kind_info = {
270   13,
271   "IIR_VariableAssignmentStatement",
272   &fire_chunk_info,
273   IR_SEQUENTIAL_STATEMENT,
274   IR_VARIABLE_ASSIGNMENT_STATEMENT,
275   0,
276   2, 2, IIR_VariableAssignmentStatement_slot_info,
277   sizeof(IIR_VariableAssignmentStatement)
278 };
279 
280 static tree_slot_info IIR_SignalAssignmentStatement_slot_info[] = {
281   { IR_EXPRESSION, "target", (tree_base_node*tree_base_node::*)&IIR_SignalAssignmentStatement::target },
282   { IR_EXPRESSION, "reject_time_expression", (tree_base_node*tree_base_node::*)&IIR_SignalAssignmentStatement::reject_time_expression },
283   { IR_WAVEFORM_LIST, "waveform", (tree_base_node*tree_base_node::*)&IIR_SignalAssignmentStatement::waveform },
284   { (tree_kind_info*)&IR_DelayMechanism_ctype_info, "delay_mechanism", (tree_base_node*tree_base_node::*)&IIR_SignalAssignmentStatement::delay_mechanism },
285 };
286 
287 tree_kind_info IR_SIGNAL_ASSIGNMENT_STATEMENT_kind_info = {
288   14,
289   "IIR_SignalAssignmentStatement",
290   &fire_chunk_info,
291   IR_SEQUENTIAL_STATEMENT,
292   IR_SIGNAL_ASSIGNMENT_STATEMENT,
293   0,
294   3, 4, IIR_SignalAssignmentStatement_slot_info,
295   sizeof(IIR_SignalAssignmentStatement)
296 };
297 
298 static tree_slot_info IIR_ReportStatement_slot_info[] = {
299   { IR_EXPRESSION, "report_expression", (tree_base_node*tree_base_node::*)&IIR_ReportStatement::report_expression },
300   { IR_EXPRESSION, "severity_expression", (tree_base_node*tree_base_node::*)&IIR_ReportStatement::severity_expression },
301 };
302 
303 tree_kind_info IR_REPORT_STATEMENT_kind_info = {
304   15,
305   "IIR_ReportStatement",
306   &fire_chunk_info,
307   IR_SEQUENTIAL_STATEMENT,
308   IR_REPORT_STATEMENT,
309   0,
310   2, 2, IIR_ReportStatement_slot_info,
311   sizeof(IIR_ReportStatement)
312 };
313 
314 static tree_slot_info IIR_AssertionStatement_slot_info[] = {
315   { IR_EXPRESSION, "assertion_condition", (tree_base_node*tree_base_node::*)&IIR_AssertionStatement::assertion_condition },
316   { IR_EXPRESSION, "report_expression", (tree_base_node*tree_base_node::*)&IIR_AssertionStatement::report_expression },
317   { IR_EXPRESSION, "severity_expression", (tree_base_node*tree_base_node::*)&IIR_AssertionStatement::severity_expression },
318 };
319 
320 tree_kind_info IR_ASSERTION_STATEMENT_kind_info = {
321   16,
322   "IIR_AssertionStatement",
323   &fire_chunk_info,
324   IR_SEQUENTIAL_STATEMENT,
325   IR_ASSERTION_STATEMENT,
326   0,
327   3, 3, IIR_AssertionStatement_slot_info,
328   sizeof(IIR_AssertionStatement)
329 };
330 
331 static tree_slot_info IIR_WaitStatement_slot_info[] = {
332   { IR_EXPRESSION, "condition_clause", (tree_base_node*tree_base_node::*)&IIR_WaitStatement::condition_clause },
333   { IR_EXPRESSION, "timeout_clause", (tree_base_node*tree_base_node::*)&IIR_WaitStatement::timeout_clause },
334   { IR_EXPRESSION_LIST, "sensitivity_list", (tree_base_node*tree_base_node::*)&IIR_WaitStatement::sensitivity_list },
335 };
336 
337 tree_kind_info IR_WAIT_STATEMENT_kind_info = {
338   17,
339   "IIR_WaitStatement",
340   &fire_chunk_info,
341   IR_SEQUENTIAL_STATEMENT,
342   IR_WAIT_STATEMENT,
343   0,
344   3, 3, IIR_WaitStatement_slot_info,
345   sizeof(IIR_WaitStatement)
346 };
347 
348 static tree_slot_info IIR_Expression_slot_info[] = {
349   { IR_TYPE, "subtype", (tree_base_node*tree_base_node::*)&IIR_Expression::subtype },
350   { (tree_kind_info*)&IR_StaticLevel_ctype_info, "static_level", (tree_base_node*tree_base_node::*)&IIR_Expression::static_level },
351 };
352 
353 tree_kind_info IR_EXPRESSION_kind_info = {
354   18,
355   "IIR_Expression",
356   &fire_chunk_info,
357   IR_ROOT,
358   IR_PHYSICAL_LITERAL,
359   0,
360   1, 2, IIR_Expression_slot_info,
361   sizeof(IIR_Expression)
362 };
363 
364 static tree_slot_info IIR_ValueAttr_slot_info[] = {
365 };
366 
367 tree_kind_info IR_VALUE_ATTR_kind_info = {
368   19,
369   "IIR_ValueAttr",
370   &fire_chunk_info,
371   IR_EXPRESSION,
372   IR_ATTR_LEFT,
373   0,
374   0, 0, IIR_ValueAttr_slot_info,
375   sizeof(IIR_ValueAttr)
376 };
377 
378 static tree_slot_info IIR_AttrTypeValue_slot_info[] = {
379   { IR_TYPE, "prefix", (tree_base_node*tree_base_node::*)&IIR_AttrTypeValue::prefix },
380   { IR_EXPRESSION, "argument", (tree_base_node*tree_base_node::*)&IIR_AttrTypeValue::argument },
381 };
382 
383 tree_kind_info IR_ATTR_TYPE_VALUE_kind_info = {
384   20,
385   "IIR_AttrTypeValue",
386   &fire_chunk_info,
387   IR_VALUE_ATTR,
388   IR_ATTR_LEFT,
389   0,
390   2, 2, IIR_AttrTypeValue_slot_info,
391   sizeof(IIR_AttrTypeValue)
392 };
393 
394 static tree_slot_info IIR_Attr_LENGTH_slot_info[] = {
395 };
396 
397 tree_kind_info IR_ATTR_LENGTH_kind_info = {
398   21,
399   "IIR_Attr_LENGTH",
400   &fire_chunk_info,
401   IR_ATTR_TYPE_VALUE,
402   IR_ATTR_LENGTH,
403   0,
404   0, 0, IIR_Attr_LENGTH_slot_info,
405   sizeof(IIR_Attr_LENGTH)
406 };
407 
408 static tree_slot_info IIR_Attr_ASCENDING_slot_info[] = {
409 };
410 
411 tree_kind_info IR_ATTR_ASCENDING_kind_info = {
412   22,
413   "IIR_Attr_ASCENDING",
414   &fire_chunk_info,
415   IR_ATTR_TYPE_VALUE,
416   IR_ATTR_ASCENDING,
417   0,
418   0, 0, IIR_Attr_ASCENDING_slot_info,
419   sizeof(IIR_Attr_ASCENDING)
420 };
421 
422 static tree_slot_info IIR_Attr_HIGH_slot_info[] = {
423 };
424 
425 tree_kind_info IR_ATTR_HIGH_kind_info = {
426   23,
427   "IIR_Attr_HIGH",
428   &fire_chunk_info,
429   IR_ATTR_TYPE_VALUE,
430   IR_ATTR_HIGH,
431   0,
432   0, 0, IIR_Attr_HIGH_slot_info,
433   sizeof(IIR_Attr_HIGH)
434 };
435 
436 static tree_slot_info IIR_Attr_LOW_slot_info[] = {
437 };
438 
439 tree_kind_info IR_ATTR_LOW_kind_info = {
440   24,
441   "IIR_Attr_LOW",
442   &fire_chunk_info,
443   IR_ATTR_TYPE_VALUE,
444   IR_ATTR_LOW,
445   0,
446   0, 0, IIR_Attr_LOW_slot_info,
447   sizeof(IIR_Attr_LOW)
448 };
449 
450 static tree_slot_info IIR_Attr_RIGHT_slot_info[] = {
451 };
452 
453 tree_kind_info IR_ATTR_RIGHT_kind_info = {
454   25,
455   "IIR_Attr_RIGHT",
456   &fire_chunk_info,
457   IR_ATTR_TYPE_VALUE,
458   IR_ATTR_RIGHT,
459   0,
460   0, 0, IIR_Attr_RIGHT_slot_info,
461   sizeof(IIR_Attr_RIGHT)
462 };
463 
464 static tree_slot_info IIR_Attr_LEFT_slot_info[] = {
465 };
466 
467 tree_kind_info IR_ATTR_LEFT_kind_info = {
468   26,
469   "IIR_Attr_LEFT",
470   &fire_chunk_info,
471   IR_ATTR_TYPE_VALUE,
472   IR_ATTR_LEFT,
473   0,
474   0, 0, IIR_Attr_LEFT_slot_info,
475   sizeof(IIR_Attr_LEFT)
476 };
477 
478 static tree_slot_info IIR_FunctionAttr_slot_info[] = {
479 };
480 
481 tree_kind_info IR_FUNCTION_ATTR_kind_info = {
482   27,
483   "IIR_FunctionAttr",
484   &fire_chunk_info,
485   IR_EXPRESSION,
486   IR_ATTR_EVENT,
487   0,
488   0, 0, IIR_FunctionAttr_slot_info,
489   sizeof(IIR_FunctionAttr)
490 };
491 
492 static tree_slot_info IIR_AttrArrayFunc_slot_info[] = {
493   { IR_EXPRESSION, "array", (tree_base_node*tree_base_node::*)&IIR_AttrArrayFunc::array },
494   { IR_TYPE, "array_type", (tree_base_node*tree_base_node::*)&IIR_AttrArrayFunc::array_type },
495   { (tree_kind_info*)&int_ctype_info, "index", (tree_base_node*tree_base_node::*)&IIR_AttrArrayFunc::index },
496 };
497 
498 tree_kind_info IR_ATTR_ARRAY_FUNC_kind_info = {
499   28,
500   "IIR_AttrArrayFunc",
501   &fire_chunk_info,
502   IR_FUNCTION_ATTR,
503   IR_ATTR_ARRAY_LEFT,
504   0,
505   2, 3, IIR_AttrArrayFunc_slot_info,
506   sizeof(IIR_AttrArrayFunc)
507 };
508 
509 static tree_slot_info IIR_Attr_ArrayLENGTH_slot_info[] = {
510 };
511 
512 tree_kind_info IR_ATTR_ARRAY_LENGTH_kind_info = {
513   29,
514   "IIR_Attr_ArrayLENGTH",
515   &fire_chunk_info,
516   IR_ATTR_ARRAY_FUNC,
517   IR_ATTR_ARRAY_LENGTH,
518   0,
519   0, 0, IIR_Attr_ArrayLENGTH_slot_info,
520   sizeof(IIR_Attr_ArrayLENGTH)
521 };
522 
523 static tree_slot_info IIR_Attr_ArrayASCENDING_slot_info[] = {
524 };
525 
526 tree_kind_info IR_ATTR_ARRAY_ASCENDING_kind_info = {
527   30,
528   "IIR_Attr_ArrayASCENDING",
529   &fire_chunk_info,
530   IR_ATTR_ARRAY_FUNC,
531   IR_ATTR_ARRAY_ASCENDING,
532   0,
533   0, 0, IIR_Attr_ArrayASCENDING_slot_info,
534   sizeof(IIR_Attr_ArrayASCENDING)
535 };
536 
537 static tree_slot_info IIR_Attr_ArrayLOW_slot_info[] = {
538 };
539 
540 tree_kind_info IR_ATTR_ARRAY_LOW_kind_info = {
541   31,
542   "IIR_Attr_ArrayLOW",
543   &fire_chunk_info,
544   IR_ATTR_ARRAY_FUNC,
545   IR_ATTR_ARRAY_LOW,
546   0,
547   0, 0, IIR_Attr_ArrayLOW_slot_info,
548   sizeof(IIR_Attr_ArrayLOW)
549 };
550 
551 static tree_slot_info IIR_Attr_ArrayHIGH_slot_info[] = {
552 };
553 
554 tree_kind_info IR_ATTR_ARRAY_HIGH_kind_info = {
555   32,
556   "IIR_Attr_ArrayHIGH",
557   &fire_chunk_info,
558   IR_ATTR_ARRAY_FUNC,
559   IR_ATTR_ARRAY_HIGH,
560   0,
561   0, 0, IIR_Attr_ArrayHIGH_slot_info,
562   sizeof(IIR_Attr_ArrayHIGH)
563 };
564 
565 static tree_slot_info IIR_Attr_ArrayRIGHT_slot_info[] = {
566 };
567 
568 tree_kind_info IR_ATTR_ARRAY_RIGHT_kind_info = {
569   33,
570   "IIR_Attr_ArrayRIGHT",
571   &fire_chunk_info,
572   IR_ATTR_ARRAY_FUNC,
573   IR_ATTR_ARRAY_RIGHT,
574   0,
575   0, 0, IIR_Attr_ArrayRIGHT_slot_info,
576   sizeof(IIR_Attr_ArrayRIGHT)
577 };
578 
579 static tree_slot_info IIR_Attr_ArrayLEFT_slot_info[] = {
580 };
581 
582 tree_kind_info IR_ATTR_ARRAY_LEFT_kind_info = {
583   34,
584   "IIR_Attr_ArrayLEFT",
585   &fire_chunk_info,
586   IR_ATTR_ARRAY_FUNC,
587   IR_ATTR_ARRAY_LEFT,
588   0,
589   0, 0, IIR_Attr_ArrayLEFT_slot_info,
590   sizeof(IIR_Attr_ArrayLEFT)
591 };
592 
593 static tree_slot_info IIR_AttrTypeFunc_slot_info[] = {
594   { IR_TYPE, "prefix", (tree_base_node*tree_base_node::*)&IIR_AttrTypeFunc::prefix },
595   { IR_EXPRESSION, "argument", (tree_base_node*tree_base_node::*)&IIR_AttrTypeFunc::argument },
596 };
597 
598 tree_kind_info IR_ATTR_TYPE_FUNC_kind_info = {
599   35,
600   "IIR_AttrTypeFunc",
601   &fire_chunk_info,
602   IR_FUNCTION_ATTR,
603   IR_ATTR_IMAGE,
604   0,
605   2, 2, IIR_AttrTypeFunc_slot_info,
606   sizeof(IIR_AttrTypeFunc)
607 };
608 
609 static tree_slot_info IIR_Attr_RIGHTOF_slot_info[] = {
610 };
611 
612 tree_kind_info IR_ATTR_RIGHTOF_kind_info = {
613   36,
614   "IIR_Attr_RIGHTOF",
615   &fire_chunk_info,
616   IR_ATTR_TYPE_FUNC,
617   IR_ATTR_RIGHTOF,
618   0,
619   0, 0, IIR_Attr_RIGHTOF_slot_info,
620   sizeof(IIR_Attr_RIGHTOF)
621 };
622 
623 static tree_slot_info IIR_Attr_LEFTOF_slot_info[] = {
624 };
625 
626 tree_kind_info IR_ATTR_LEFTOF_kind_info = {
627   37,
628   "IIR_Attr_LEFTOF",
629   &fire_chunk_info,
630   IR_ATTR_TYPE_FUNC,
631   IR_ATTR_LEFTOF,
632   0,
633   0, 0, IIR_Attr_LEFTOF_slot_info,
634   sizeof(IIR_Attr_LEFTOF)
635 };
636 
637 static tree_slot_info IIR_Attr_PRED_slot_info[] = {
638 };
639 
640 tree_kind_info IR_ATTR_PRED_kind_info = {
641   38,
642   "IIR_Attr_PRED",
643   &fire_chunk_info,
644   IR_ATTR_TYPE_FUNC,
645   IR_ATTR_PRED,
646   0,
647   0, 0, IIR_Attr_PRED_slot_info,
648   sizeof(IIR_Attr_PRED)
649 };
650 
651 static tree_slot_info IIR_Attr_SUCC_slot_info[] = {
652 };
653 
654 tree_kind_info IR_ATTR_SUCC_kind_info = {
655   39,
656   "IIR_Attr_SUCC",
657   &fire_chunk_info,
658   IR_ATTR_TYPE_FUNC,
659   IR_ATTR_SUCC,
660   0,
661   0, 0, IIR_Attr_SUCC_slot_info,
662   sizeof(IIR_Attr_SUCC)
663 };
664 
665 static tree_slot_info IIR_Attr_VAL_slot_info[] = {
666 };
667 
668 tree_kind_info IR_ATTR_VAL_kind_info = {
669   40,
670   "IIR_Attr_VAL",
671   &fire_chunk_info,
672   IR_ATTR_TYPE_FUNC,
673   IR_ATTR_VAL,
674   0,
675   0, 0, IIR_Attr_VAL_slot_info,
676   sizeof(IIR_Attr_VAL)
677 };
678 
679 static tree_slot_info IIR_Attr_POS_slot_info[] = {
680 };
681 
682 tree_kind_info IR_ATTR_POS_kind_info = {
683   41,
684   "IIR_Attr_POS",
685   &fire_chunk_info,
686   IR_ATTR_TYPE_FUNC,
687   IR_ATTR_POS,
688   0,
689   0, 0, IIR_Attr_POS_slot_info,
690   sizeof(IIR_Attr_POS)
691 };
692 
693 static tree_slot_info IIR_Attr_VALUE_slot_info[] = {
694 };
695 
696 tree_kind_info IR_ATTR_VALUE_kind_info = {
697   42,
698   "IIR_Attr_VALUE",
699   &fire_chunk_info,
700   IR_ATTR_TYPE_FUNC,
701   IR_ATTR_VALUE,
702   0,
703   0, 0, IIR_Attr_VALUE_slot_info,
704   sizeof(IIR_Attr_VALUE)
705 };
706 
707 static tree_slot_info IIR_Attr_IMAGE_slot_info[] = {
708 };
709 
710 tree_kind_info IR_ATTR_IMAGE_kind_info = {
711   43,
712   "IIR_Attr_IMAGE",
713   &fire_chunk_info,
714   IR_ATTR_TYPE_FUNC,
715   IR_ATTR_IMAGE,
716   0,
717   0, 0, IIR_Attr_IMAGE_slot_info,
718   sizeof(IIR_Attr_IMAGE)
719 };
720 
721 static tree_slot_info IIR_AttrSigFunc_slot_info[] = {
722   { IR_OBJECT_REFERENCE, "signal", (tree_base_node*tree_base_node::*)&IIR_AttrSigFunc::signal },
723 };
724 
725 tree_kind_info IR_ATTR_SIG_FUNC_kind_info = {
726   44,
727   "IIR_AttrSigFunc",
728   &fire_chunk_info,
729   IR_FUNCTION_ATTR,
730   IR_ATTR_EVENT,
731   0,
732   1, 1, IIR_AttrSigFunc_slot_info,
733   sizeof(IIR_AttrSigFunc)
734 };
735 
736 static tree_slot_info IIR_Attr_DRIVING_VALUE_slot_info[] = {
737 };
738 
739 tree_kind_info IR_ATTR_DRIVING_VALUE_kind_info = {
740   45,
741   "IIR_Attr_DRIVING_VALUE",
742   &fire_chunk_info,
743   IR_ATTR_SIG_FUNC,
744   IR_ATTR_DRIVING_VALUE,
745   0,
746   0, 0, IIR_Attr_DRIVING_VALUE_slot_info,
747   sizeof(IIR_Attr_DRIVING_VALUE)
748 };
749 
750 static tree_slot_info IIR_Attr_DRIVING_slot_info[] = {
751 };
752 
753 tree_kind_info IR_ATTR_DRIVING_kind_info = {
754   46,
755   "IIR_Attr_DRIVING",
756   &fire_chunk_info,
757   IR_ATTR_SIG_FUNC,
758   IR_ATTR_DRIVING,
759   0,
760   0, 0, IIR_Attr_DRIVING_slot_info,
761   sizeof(IIR_Attr_DRIVING)
762 };
763 
764 static tree_slot_info IIR_Attr_LAST_VALUE_slot_info[] = {
765 };
766 
767 tree_kind_info IR_ATTR_LAST_VALUE_kind_info = {
768   47,
769   "IIR_Attr_LAST_VALUE",
770   &fire_chunk_info,
771   IR_ATTR_SIG_FUNC,
772   IR_ATTR_LAST_VALUE,
773   0,
774   0, 0, IIR_Attr_LAST_VALUE_slot_info,
775   sizeof(IIR_Attr_LAST_VALUE)
776 };
777 
778 static tree_slot_info IIR_Attr_LAST_ACTIVE_slot_info[] = {
779 };
780 
781 tree_kind_info IR_ATTR_LAST_ACTIVE_kind_info = {
782   48,
783   "IIR_Attr_LAST_ACTIVE",
784   &fire_chunk_info,
785   IR_ATTR_SIG_FUNC,
786   IR_ATTR_LAST_ACTIVE,
787   0,
788   0, 0, IIR_Attr_LAST_ACTIVE_slot_info,
789   sizeof(IIR_Attr_LAST_ACTIVE)
790 };
791 
792 static tree_slot_info IIR_Attr_LAST_EVENT_slot_info[] = {
793 };
794 
795 tree_kind_info IR_ATTR_LAST_EVENT_kind_info = {
796   49,
797   "IIR_Attr_LAST_EVENT",
798   &fire_chunk_info,
799   IR_ATTR_SIG_FUNC,
800   IR_ATTR_LAST_EVENT,
801   0,
802   0, 0, IIR_Attr_LAST_EVENT_slot_info,
803   sizeof(IIR_Attr_LAST_EVENT)
804 };
805 
806 static tree_slot_info IIR_Attr_ACTIVE_slot_info[] = {
807 };
808 
809 tree_kind_info IR_ATTR_ACTIVE_kind_info = {
810   50,
811   "IIR_Attr_ACTIVE",
812   &fire_chunk_info,
813   IR_ATTR_SIG_FUNC,
814   IR_ATTR_ACTIVE,
815   0,
816   0, 0, IIR_Attr_ACTIVE_slot_info,
817   sizeof(IIR_Attr_ACTIVE)
818 };
819 
820 static tree_slot_info IIR_Attr_EVENT_slot_info[] = {
821 };
822 
823 tree_kind_info IR_ATTR_EVENT_kind_info = {
824   51,
825   "IIR_Attr_EVENT",
826   &fire_chunk_info,
827   IR_ATTR_SIG_FUNC,
828   IR_ATTR_EVENT,
829   0,
830   0, 0, IIR_Attr_EVENT_slot_info,
831   sizeof(IIR_Attr_EVENT)
832 };
833 
834 static tree_slot_info IIR_ObjectReference_slot_info[] = {
835 };
836 
837 tree_kind_info IR_OBJECT_REFERENCE_kind_info = {
838   52,
839   "IIR_ObjectReference",
840   &fire_chunk_info,
841   IR_EXPRESSION,
842   IR_SIMPLE_REFERENCE,
843   0,
844   0, 0, IIR_ObjectReference_slot_info,
845   sizeof(IIR_ObjectReference)
846 };
847 
848 static tree_slot_info IIR_SignalAttr_slot_info[] = {
849   { IR_OBJECT_REFERENCE, "signal", (tree_base_node*tree_base_node::*)&IIR_SignalAttr::signal },
850 };
851 
852 tree_kind_info IR_SIGNAL_ATTR_kind_info = {
853   53,
854   "IIR_SignalAttr",
855   &fire_chunk_info,
856   IR_OBJECT_REFERENCE,
857   IR_ATTR_DELAYED,
858   0,
859   1, 1, IIR_SignalAttr_slot_info,
860   sizeof(IIR_SignalAttr)
861 };
862 
863 static tree_slot_info IIR_Attr_TRANSACTION_slot_info[] = {
864 };
865 
866 tree_kind_info IR_ATTR_TRANSACTION_kind_info = {
867   54,
868   "IIR_Attr_TRANSACTION",
869   &fire_chunk_info,
870   IR_SIGNAL_ATTR,
871   IR_ATTR_TRANSACTION,
872   0,
873   0, 0, IIR_Attr_TRANSACTION_slot_info,
874   sizeof(IIR_Attr_TRANSACTION)
875 };
876 
877 static tree_slot_info IIR_Attr_QUIET_slot_info[] = {
878   { IR_EXPRESSION, "duration", (tree_base_node*tree_base_node::*)&IIR_Attr_QUIET::duration },
879 };
880 
881 tree_kind_info IR_ATTR_QUIET_kind_info = {
882   55,
883   "IIR_Attr_QUIET",
884   &fire_chunk_info,
885   IR_SIGNAL_ATTR,
886   IR_ATTR_QUIET,
887   0,
888   1, 1, IIR_Attr_QUIET_slot_info,
889   sizeof(IIR_Attr_QUIET)
890 };
891 
892 static tree_slot_info IIR_Attr_STABLE_slot_info[] = {
893   { IR_EXPRESSION, "duration", (tree_base_node*tree_base_node::*)&IIR_Attr_STABLE::duration },
894 };
895 
896 tree_kind_info IR_ATTR_STABLE_kind_info = {
897   56,
898   "IIR_Attr_STABLE",
899   &fire_chunk_info,
900   IR_SIGNAL_ATTR,
901   IR_ATTR_STABLE,
902   0,
903   1, 1, IIR_Attr_STABLE_slot_info,
904   sizeof(IIR_Attr_STABLE)
905 };
906 
907 static tree_slot_info IIR_Attr_DELAYED_slot_info[] = {
908   { IR_EXPRESSION, "delay", (tree_base_node*tree_base_node::*)&IIR_Attr_DELAYED::delay },
909 };
910 
911 tree_kind_info IR_ATTR_DELAYED_kind_info = {
912   57,
913   "IIR_Attr_DELAYED",
914   &fire_chunk_info,
915   IR_SIGNAL_ATTR,
916   IR_ATTR_DELAYED,
917   0,
918   1, 1, IIR_Attr_DELAYED_slot_info,
919   sizeof(IIR_Attr_DELAYED)
920 };
921 
922 static tree_slot_info IIR_GenericArrayReference_slot_info[] = {
923   { IR_EXPRESSION, "array", (tree_base_node*tree_base_node::*)&IIR_GenericArrayReference::array },
924 };
925 
926 tree_kind_info IR_GENERIC_ARRAY_REFERENCE_kind_info = {
927   58,
928   "IIR_GenericArrayReference",
929   &fire_chunk_info,
930   IR_OBJECT_REFERENCE,
931   IR_ARRAY_REFERENCE,
932   0,
933   1, 1, IIR_GenericArrayReference_slot_info,
934   sizeof(IIR_GenericArrayReference)
935 };
936 
937 static tree_slot_info IIR_SliceReference_slot_info[] = {
938   { IR_RANGE, "range", (tree_base_node*tree_base_node::*)&IIR_SliceReference::range },
939 };
940 
941 tree_kind_info IR_SLICE_REFERENCE_kind_info = {
942   59,
943   "IIR_SliceReference",
944   &fire_chunk_info,
945   IR_GENERIC_ARRAY_REFERENCE,
946   IR_SLICE_REFERENCE,
947   0,
948   1, 1, IIR_SliceReference_slot_info,
949   sizeof(IIR_SliceReference)
950 };
951 
952 static tree_slot_info IIR_ArrayReference_slot_info[] = {
953   { IR_EXPRESSION_LIST, "indices", (tree_base_node*tree_base_node::*)&IIR_ArrayReference::indices },
954 };
955 
956 tree_kind_info IR_ARRAY_REFERENCE_kind_info = {
957   60,
958   "IIR_ArrayReference",
959   &fire_chunk_info,
960   IR_GENERIC_ARRAY_REFERENCE,
961   IR_ARRAY_REFERENCE,
962   0,
963   1, 1, IIR_ArrayReference_slot_info,
964   sizeof(IIR_ArrayReference)
965 };
966 
967 static tree_slot_info IIR_RecordReference_slot_info[] = {
968   { IR_EXPRESSION, "record", (tree_base_node*tree_base_node::*)&IIR_RecordReference::record },
969   { IR_ELEMENT_DECLARATION, "element", (tree_base_node*tree_base_node::*)&IIR_RecordReference::element },
970 };
971 
972 tree_kind_info IR_RECORD_REFERENCE_kind_info = {
973   61,
974   "IIR_RecordReference",
975   &fire_chunk_info,
976   IR_OBJECT_REFERENCE,
977   IR_RECORD_REFERENCE,
978   0,
979   2, 2, IIR_RecordReference_slot_info,
980   sizeof(IIR_RecordReference)
981 };
982 
983 static tree_slot_info IIR_AccessReference_slot_info[] = {
984   { IR_EXPRESSION, "access", (tree_base_node*tree_base_node::*)&IIR_AccessReference::access },
985 };
986 
987 tree_kind_info IR_ACCESS_REFERENCE_kind_info = {
988   62,
989   "IIR_AccessReference",
990   &fire_chunk_info,
991   IR_OBJECT_REFERENCE,
992   IR_ACCESS_REFERENCE,
993   0,
994   1, 1, IIR_AccessReference_slot_info,
995   sizeof(IIR_AccessReference)
996 };
997 
998 static tree_slot_info IIR_SimpleReference_slot_info[] = {
999   { IR_OBJECT_DECLARATION, "object", (tree_base_node*tree_base_node::*)&IIR_SimpleReference::object },
1000 };
1001 
1002 tree_kind_info IR_SIMPLE_REFERENCE_kind_info = {
1003   63,
1004   "IIR_SimpleReference",
1005   &fire_chunk_info,
1006   IR_OBJECT_REFERENCE,
1007   IR_SIMPLE_REFERENCE,
1008   0,
1009   1, 1, IIR_SimpleReference_slot_info,
1010   sizeof(IIR_SimpleReference)
1011 };
1012 
1013 static tree_slot_info IIR_OpenExpression_slot_info[] = {
1014 };
1015 
1016 tree_kind_info IR_OPEN_EXPRESSION_kind_info = {
1017   64,
1018   "IIR_OpenExpression",
1019   &fire_chunk_info,
1020   IR_EXPRESSION,
1021   IR_OPEN_EXPRESSION,
1022   0,
1023   0, 0, IIR_OpenExpression_slot_info,
1024   sizeof(IIR_OpenExpression)
1025 };
1026 
1027 static tree_slot_info IIR_Allocator_slot_info[] = {
1028   { IR_TYPE, "type_mark", (tree_base_node*tree_base_node::*)&IIR_Allocator::type_mark },
1029   { IR_EXPRESSION, "value", (tree_base_node*tree_base_node::*)&IIR_Allocator::value },
1030 };
1031 
1032 tree_kind_info IR_ALLOCATOR_kind_info = {
1033   65,
1034   "IIR_Allocator",
1035   &fire_chunk_info,
1036   IR_EXPRESSION,
1037   IR_ALLOCATOR,
1038   0,
1039   2, 2, IIR_Allocator_slot_info,
1040   sizeof(IIR_Allocator)
1041 };
1042 
1043 static tree_slot_info IIR_TypeConversion_slot_info[] = {
1044   { IR_TYPE, "type_mark", (tree_base_node*tree_base_node::*)&IIR_TypeConversion::type_mark },
1045   { IR_EXPRESSION, "expression", (tree_base_node*tree_base_node::*)&IIR_TypeConversion::expression },
1046 };
1047 
1048 tree_kind_info IR_TYPE_CONVERSION_kind_info = {
1049   66,
1050   "IIR_TypeConversion",
1051   &fire_chunk_info,
1052   IR_EXPRESSION,
1053   IR_TYPE_CONVERSION,
1054   0,
1055   2, 2, IIR_TypeConversion_slot_info,
1056   sizeof(IIR_TypeConversion)
1057 };
1058 
1059 static tree_slot_info IIR_QualifiedExpression_slot_info[] = {
1060   { IR_TYPE, "type_mark", (tree_base_node*tree_base_node::*)&IIR_QualifiedExpression::type_mark },
1061   { IR_EXPRESSION, "expression", (tree_base_node*tree_base_node::*)&IIR_QualifiedExpression::expression },
1062 };
1063 
1064 tree_kind_info IR_QUALIFIED_EXPRESSION_kind_info = {
1065   67,
1066   "IIR_QualifiedExpression",
1067   &fire_chunk_info,
1068   IR_EXPRESSION,
1069   IR_QUALIFIED_EXPRESSION,
1070   0,
1071   2, 2, IIR_QualifiedExpression_slot_info,
1072   sizeof(IIR_QualifiedExpression)
1073 };
1074 
1075 static tree_slot_info IIR_FunctionCall_slot_info[] = {
1076   { IR_FUNCTION_DECLARATION, "function", (tree_base_node*tree_base_node::*)&IIR_FunctionCall::function },
1077   { IR_ASSOCIATION_LIST, "parameter_association_list", (tree_base_node*tree_base_node::*)&IIR_FunctionCall::parameter_association_list },
1078 };
1079 
1080 tree_kind_info IR_FUNCTION_CALL_kind_info = {
1081   68,
1082   "IIR_FunctionCall",
1083   &fire_chunk_info,
1084   IR_EXPRESSION,
1085   IR_FUNCTION_CALL,
1086   0,
1087   2, 2, IIR_FunctionCall_slot_info,
1088   sizeof(IIR_FunctionCall)
1089 };
1090 
1091 static tree_slot_info IIR_Aggregate_slot_info[] = {
1092 };
1093 
1094 tree_kind_info IR_AGGREGATE_kind_info = {
1095   69,
1096   "IIR_Aggregate",
1097   &fire_chunk_info,
1098   IR_EXPRESSION,
1099   IR_ARTIFICIAL_RECORD_AGGREGATE,
1100   0,
1101   0, 0, IIR_Aggregate_slot_info,
1102   sizeof(IIR_Aggregate)
1103 };
1104 
1105 static tree_slot_info IIR_ArrayAggregate_slot_info[] = {
1106   { IR_INDEXED_ASSOCIATION_LIST, "indexed_association_list", (tree_base_node*tree_base_node::*)&IIR_ArrayAggregate::indexed_association_list },
1107 };
1108 
1109 tree_kind_info IR_ARRAY_AGGREGATE_kind_info = {
1110   70,
1111   "IIR_ArrayAggregate",
1112   &fire_chunk_info,
1113   IR_AGGREGATE,
1114   IR_ARTIFICIAL_ARRAY_AGGREGATE,
1115   0,
1116   1, 1, IIR_ArrayAggregate_slot_info,
1117   sizeof(IIR_ArrayAggregate)
1118 };
1119 
1120 static tree_slot_info IIR_ArtificialArrayAggregate_slot_info[] = {
1121 };
1122 
1123 tree_kind_info IR_ARTIFICIAL_ARRAY_AGGREGATE_kind_info = {
1124   71,
1125   "IIR_ArtificialArrayAggregate",
1126   &fire_chunk_info,
1127   IR_ARRAY_AGGREGATE,
1128   IR_ARTIFICIAL_ARRAY_AGGREGATE,
1129   0,
1130   0, 0, IIR_ArtificialArrayAggregate_slot_info,
1131   sizeof(IIR_ArtificialArrayAggregate)
1132 };
1133 
1134 static tree_slot_info IIR_RecordAggregate_slot_info[] = {
1135   { IR_ELEMENT_ASSOCIATION_LIST, "element_association_list", (tree_base_node*tree_base_node::*)&IIR_RecordAggregate::element_association_list },
1136 };
1137 
1138 tree_kind_info IR_RECORD_AGGREGATE_kind_info = {
1139   72,
1140   "IIR_RecordAggregate",
1141   &fire_chunk_info,
1142   IR_AGGREGATE,
1143   IR_ARTIFICIAL_RECORD_AGGREGATE,
1144   0,
1145   1, 1, IIR_RecordAggregate_slot_info,
1146   sizeof(IIR_RecordAggregate)
1147 };
1148 
1149 static tree_slot_info IIR_ArtificialRecordAggregate_slot_info[] = {
1150 };
1151 
1152 tree_kind_info IR_ARTIFICIAL_RECORD_AGGREGATE_kind_info = {
1153   73,
1154   "IIR_ArtificialRecordAggregate",
1155   &fire_chunk_info,
1156   IR_RECORD_AGGREGATE,
1157   IR_ARTIFICIAL_RECORD_AGGREGATE,
1158   0,
1159   0, 0, IIR_ArtificialRecordAggregate_slot_info,
1160   sizeof(IIR_ArtificialRecordAggregate)
1161 };
1162 
1163 static tree_slot_info IIR_NullExpression_slot_info[] = {
1164 };
1165 
1166 tree_kind_info IR_NULL_EXPRESSION_kind_info = {
1167   74,
1168   "IIR_NullExpression",
1169   &fire_chunk_info,
1170   IR_EXPRESSION,
1171   IR_NULL_EXPRESSION,
1172   0,
1173   0, 0, IIR_NullExpression_slot_info,
1174   sizeof(IIR_NullExpression)
1175 };
1176 
1177 static tree_slot_info IIR_EnumLiteralReference_slot_info[] = {
1178   { IR_ENUMERATION_LITERAL, "value", (tree_base_node*tree_base_node::*)&IIR_EnumLiteralReference::value },
1179 };
1180 
1181 tree_kind_info IR_ENUM_LITERAL_REFERENCE_kind_info = {
1182   75,
1183   "IIR_EnumLiteralReference",
1184   &fire_chunk_info,
1185   IR_EXPRESSION,
1186   IR_ENUM_LITERAL_REFERENCE,
1187   0,
1188   1, 1, IIR_EnumLiteralReference_slot_info,
1189   sizeof(IIR_EnumLiteralReference)
1190 };
1191 
1192 static tree_slot_info IIR_ArrayLiteralExpression_slot_info[] = {
1193   { IR_STRING_LITERAL, "value", (tree_base_node*tree_base_node::*)&IIR_ArrayLiteralExpression::value },
1194 };
1195 
1196 tree_kind_info IR_ARRAY_LITERAL_EXPRESSION_kind_info = {
1197   76,
1198   "IIR_ArrayLiteralExpression",
1199   &fire_chunk_info,
1200   IR_EXPRESSION,
1201   IR_ARRAY_LITERAL_EXPRESSION,
1202   0,
1203   1, 1, IIR_ArrayLiteralExpression_slot_info,
1204   sizeof(IIR_ArrayLiteralExpression)
1205 };
1206 
1207 static tree_slot_info IIR_AbstractLiteralExpression_slot_info[] = {
1208   { IR_ABSTRACT_LITERAL, "value", (tree_base_node*tree_base_node::*)&IIR_AbstractLiteralExpression::value },
1209 };
1210 
1211 tree_kind_info IR_ABSTRACT_LITERAL_EXPRESSION_kind_info = {
1212   77,
1213   "IIR_AbstractLiteralExpression",
1214   &fire_chunk_info,
1215   IR_EXPRESSION,
1216   IR_PHYSICAL_LITERAL,
1217   0,
1218   1, 1, IIR_AbstractLiteralExpression_slot_info,
1219   sizeof(IIR_AbstractLiteralExpression)
1220 };
1221 
1222 static tree_slot_info IIR_PhysicalLiteral_slot_info[] = {
1223   { IR_PHYSICAL_UNIT, "unit", (tree_base_node*tree_base_node::*)&IIR_PhysicalLiteral::unit },
1224 };
1225 
1226 tree_kind_info IR_PHYSICAL_LITERAL_kind_info = {
1227   78,
1228   "IIR_PhysicalLiteral",
1229   &fire_chunk_info,
1230   IR_ABSTRACT_LITERAL_EXPRESSION,
1231   IR_PHYSICAL_LITERAL,
1232   0,
1233   1, 1, IIR_PhysicalLiteral_slot_info,
1234   sizeof(IIR_PhysicalLiteral)
1235 };
1236 
1237 static tree_slot_info IIR_Declaration_slot_info[] = {
1238   { IR_TEXT_LITERAL, "declarator", (tree_base_node*tree_base_node::*)&IIR_Declaration::declarator },
1239   { IR_DECLARATIVE_REGION, "declarative_region", (tree_base_node*tree_base_node::*)&IIR_Declaration::declarative_region },
1240   { IR_ATTRIBUTE_VALUE_LIST, "attributes", (tree_base_node*tree_base_node::*)&IIR_Declaration::attributes },
1241   { (tree_kind_info*)&int_ctype_info, "seqno", (tree_base_node*tree_base_node::*)&IIR_Declaration::seqno },
1242 };
1243 
1244 tree_kind_info IR_DECLARATION_kind_info = {
1245   79,
1246   "IIR_Declaration",
1247   &fire_chunk_info,
1248   IR_ROOT,
1249   IR_LOOP_DECLARATIVE_REGION,
1250   0,
1251   3, 4, IIR_Declaration_slot_info,
1252   sizeof(IIR_Declaration)
1253 };
1254 
1255 static tree_slot_info IIR_UseClause_slot_info[] = {
1256   { IR_DECLARATION, "used_unit", (tree_base_node*tree_base_node::*)&IIR_UseClause::used_unit },
1257 };
1258 
1259 tree_kind_info IR_USE_CLAUSE_kind_info = {
1260   80,
1261   "IIR_UseClause",
1262   &fire_chunk_info,
1263   IR_DECLARATION,
1264   IR_USE_CLAUSE,
1265   0,
1266   1, 1, IIR_UseClause_slot_info,
1267   sizeof(IIR_UseClause)
1268 };
1269 
1270 static tree_slot_info IIR_LibraryClause_slot_info[] = {
1271 };
1272 
1273 tree_kind_info IR_LIBRARY_CLAUSE_kind_info = {
1274   81,
1275   "IIR_LibraryClause",
1276   &fire_chunk_info,
1277   IR_DECLARATION,
1278   IR_LIBRARY_CLAUSE,
1279   0,
1280   0, 0, IIR_LibraryClause_slot_info,
1281   sizeof(IIR_LibraryClause)
1282 };
1283 
1284 static tree_slot_info IIR_Label_slot_info[] = {
1285   { IR_SEQUENTIAL_STATEMENT, "statement", (tree_base_node*tree_base_node::*)&IIR_Label::statement },
1286 };
1287 
1288 tree_kind_info IR_LABEL_kind_info = {
1289   82,
1290   "IIR_Label",
1291   &fire_chunk_info,
1292   IR_DECLARATION,
1293   IR_LABEL,
1294   0,
1295   1, 1, IIR_Label_slot_info,
1296   sizeof(IIR_Label)
1297 };
1298 
1299 static tree_slot_info IIR_DisconnectSpecification_slot_info[] = {
1300   { IR_TYPE, "type_mark", (tree_base_node*tree_base_node::*)&IIR_DisconnectSpecification::type_mark },
1301   { IR_EXPRESSION, "time_expression", (tree_base_node*tree_base_node::*)&IIR_DisconnectSpecification::time_expression },
1302   { IR_OBJECT_REFERENCE, "guarded_signal", (tree_base_node*tree_base_node::*)&IIR_DisconnectSpecification::guarded_signal },
1303 };
1304 
1305 tree_kind_info IR_DISCONNECT_SPECIFICATION_kind_info = {
1306   83,
1307   "IIR_DisconnectSpecification",
1308   &fire_chunk_info,
1309   IR_DECLARATION,
1310   IR_DISCONNECT_SPECIFICATION,
1311   0,
1312   3, 3, IIR_DisconnectSpecification_slot_info,
1313   sizeof(IIR_DisconnectSpecification)
1314 };
1315 
1316 static tree_slot_info IIR_PhysicalUnit_slot_info[] = {
1317   { IR_EXPRESSION, "multiplier", (tree_base_node*tree_base_node::*)&IIR_PhysicalUnit::multiplier },
1318   { IR_PHYSICAL_UNIT, "unit_name", (tree_base_node*tree_base_node::*)&IIR_PhysicalUnit::unit_name },
1319   { IR_PHYSICAL_TYPE, "type", (tree_base_node*tree_base_node::*)&IIR_PhysicalUnit::type },
1320   { (tree_kind_info*)&int_ctype_info, "unit_pos", (tree_base_node*tree_base_node::*)&IIR_PhysicalUnit::unit_pos },
1321 };
1322 
1323 tree_kind_info IR_PHYSICAL_UNIT_kind_info = {
1324   84,
1325   "IIR_PhysicalUnit",
1326   &fire_chunk_info,
1327   IR_DECLARATION,
1328   IR_PHYSICAL_UNIT,
1329   0,
1330   3, 4, IIR_PhysicalUnit_slot_info,
1331   sizeof(IIR_PhysicalUnit)
1332 };
1333 
1334 static tree_slot_info IIR_LibraryDeclaration_slot_info[] = {
1335   { IR_LIBRARY_UNIT_LIST, "primary_units", (tree_base_node*tree_base_node::*)&IIR_LibraryDeclaration::primary_units },
1336 };
1337 
1338 tree_kind_info IR_LIBRARY_DECLARATION_kind_info = {
1339   85,
1340   "IIR_LibraryDeclaration",
1341   &fire_chunk_info,
1342   IR_DECLARATION,
1343   IR_LIBRARY_DECLARATION,
1344   0,
1345   1, 1, IIR_LibraryDeclaration_slot_info,
1346   sizeof(IIR_LibraryDeclaration)
1347 };
1348 
1349 static tree_slot_info IIR_AttributeDeclaration_slot_info[] = {
1350   { IR_TYPE, "subtype", (tree_base_node*tree_base_node::*)&IIR_AttributeDeclaration::subtype },
1351 };
1352 
1353 tree_kind_info IR_ATTRIBUTE_DECLARATION_kind_info = {
1354   86,
1355   "IIR_AttributeDeclaration",
1356   &fire_chunk_info,
1357   IR_DECLARATION,
1358   IR_ATTRIBUTE_DECLARATION,
1359   0,
1360   1, 1, IIR_AttributeDeclaration_slot_info,
1361   sizeof(IIR_AttributeDeclaration)
1362 };
1363 
1364 static tree_slot_info IIR_ObjectDeclaration_slot_info[] = {
1365   { IR_TYPE, "subtype", (tree_base_node*tree_base_node::*)&IIR_ObjectDeclaration::subtype },
1366   { IR_EXPRESSION, "initial_value", (tree_base_node*tree_base_node::*)&IIR_ObjectDeclaration::initial_value },
1367   { IR_OBJECT_REFERENCE, "alias_base", (tree_base_node*tree_base_node::*)&IIR_ObjectDeclaration::alias_base },
1368 };
1369 
1370 tree_kind_info IR_OBJECT_DECLARATION_kind_info = {
1371   87,
1372   "IIR_ObjectDeclaration",
1373   &fire_chunk_info,
1374   IR_DECLARATION,
1375   IR_CONSTANT_DECLARATION,
1376   0,
1377   3, 3, IIR_ObjectDeclaration_slot_info,
1378   sizeof(IIR_ObjectDeclaration)
1379 };
1380 
1381 static tree_slot_info IIR_InterfaceDeclaration_slot_info[] = {
1382   { (tree_kind_info*)&IR_Mode_ctype_info, "mode", (tree_base_node*tree_base_node::*)&IIR_InterfaceDeclaration::mode },
1383   { (tree_kind_info*)&bool_ctype_info, "bus", (tree_base_node*tree_base_node::*)&IIR_InterfaceDeclaration::bus },
1384 };
1385 
1386 tree_kind_info IR_INTERFACE_DECLARATION_kind_info = {
1387   88,
1388   "IIR_InterfaceDeclaration",
1389   &fire_chunk_info,
1390   IR_OBJECT_DECLARATION,
1391   IR_CONSTANT_INTERFACE_DECLARATION,
1392   0,
1393   0, 2, IIR_InterfaceDeclaration_slot_info,
1394   sizeof(IIR_InterfaceDeclaration)
1395 };
1396 
1397 static tree_slot_info IIR_FileInterfaceDeclaration_slot_info[] = {
1398 };
1399 
1400 tree_kind_info IR_FILE_INTERFACE_DECLARATION_kind_info = {
1401   89,
1402   "IIR_FileInterfaceDeclaration",
1403   &fire_chunk_info,
1404   IR_INTERFACE_DECLARATION,
1405   IR_FILE_INTERFACE_DECLARATION,
1406   0,
1407   0, 0, IIR_FileInterfaceDeclaration_slot_info,
1408   sizeof(IIR_FileInterfaceDeclaration)
1409 };
1410 
1411 static tree_slot_info IIR_SignalInterfaceDeclaration_slot_info[] = {
1412   { (tree_kind_info*)&IR_SignalKind_ctype_info, "signal_kind", (tree_base_node*tree_base_node::*)&IIR_SignalInterfaceDeclaration::signal_kind },
1413 };
1414 
1415 tree_kind_info IR_SIGNAL_INTERFACE_DECLARATION_kind_info = {
1416   90,
1417   "IIR_SignalInterfaceDeclaration",
1418   &fire_chunk_info,
1419   IR_INTERFACE_DECLARATION,
1420   IR_SIGNAL_INTERFACE_DECLARATION,
1421   0,
1422   0, 1, IIR_SignalInterfaceDeclaration_slot_info,
1423   sizeof(IIR_SignalInterfaceDeclaration)
1424 };
1425 
1426 static tree_slot_info IIR_VariableInterfaceDeclaration_slot_info[] = {
1427 };
1428 
1429 tree_kind_info IR_VARIABLE_INTERFACE_DECLARATION_kind_info = {
1430   91,
1431   "IIR_VariableInterfaceDeclaration",
1432   &fire_chunk_info,
1433   IR_INTERFACE_DECLARATION,
1434   IR_VARIABLE_INTERFACE_DECLARATION,
1435   0,
1436   0, 0, IIR_VariableInterfaceDeclaration_slot_info,
1437   sizeof(IIR_VariableInterfaceDeclaration)
1438 };
1439 
1440 static tree_slot_info IIR_ConstantInterfaceDeclaration_slot_info[] = {
1441 };
1442 
1443 tree_kind_info IR_CONSTANT_INTERFACE_DECLARATION_kind_info = {
1444   92,
1445   "IIR_ConstantInterfaceDeclaration",
1446   &fire_chunk_info,
1447   IR_INTERFACE_DECLARATION,
1448   IR_CONSTANT_INTERFACE_DECLARATION,
1449   0,
1450   0, 0, IIR_ConstantInterfaceDeclaration_slot_info,
1451   sizeof(IIR_ConstantInterfaceDeclaration)
1452 };
1453 
1454 static tree_slot_info IIR_FileDeclaration_slot_info[] = {
1455   { IR_EXPRESSION, "file_open_expression", (tree_base_node*tree_base_node::*)&IIR_FileDeclaration::file_open_expression },
1456   { IR_EXPRESSION, "file_logical_name", (tree_base_node*tree_base_node::*)&IIR_FileDeclaration::file_logical_name },
1457 };
1458 
1459 tree_kind_info IR_FILE_DECLARATION_kind_info = {
1460   93,
1461   "IIR_FileDeclaration",
1462   &fire_chunk_info,
1463   IR_OBJECT_DECLARATION,
1464   IR_FILE_DECLARATION,
1465   0,
1466   2, 2, IIR_FileDeclaration_slot_info,
1467   sizeof(IIR_FileDeclaration)
1468 };
1469 
1470 static tree_slot_info IIR_SignalDeclaration_slot_info[] = {
1471   { (tree_kind_info*)&IR_SignalKind_ctype_info, "signal_kind", (tree_base_node*tree_base_node::*)&IIR_SignalDeclaration::signal_kind },
1472 };
1473 
1474 tree_kind_info IR_SIGNAL_DECLARATION_kind_info = {
1475   94,
1476   "IIR_SignalDeclaration",
1477   &fire_chunk_info,
1478   IR_OBJECT_DECLARATION,
1479   IR_SIGNAL_DECLARATION,
1480   0,
1481   0, 1, IIR_SignalDeclaration_slot_info,
1482   sizeof(IIR_SignalDeclaration)
1483 };
1484 
1485 static tree_slot_info IIR_VariableDeclaration_slot_info[] = {
1486 };
1487 
1488 tree_kind_info IR_VARIABLE_DECLARATION_kind_info = {
1489   95,
1490   "IIR_VariableDeclaration",
1491   &fire_chunk_info,
1492   IR_OBJECT_DECLARATION,
1493   IR_SHARED_VARIABLE_DECLARATION,
1494   0,
1495   0, 0, IIR_VariableDeclaration_slot_info,
1496   sizeof(IIR_VariableDeclaration)
1497 };
1498 
1499 static tree_slot_info IIR_SharedVariableDeclaration_slot_info[] = {
1500 };
1501 
1502 tree_kind_info IR_SHARED_VARIABLE_DECLARATION_kind_info = {
1503   96,
1504   "IIR_SharedVariableDeclaration",
1505   &fire_chunk_info,
1506   IR_VARIABLE_DECLARATION,
1507   IR_SHARED_VARIABLE_DECLARATION,
1508   0,
1509   0, 0, IIR_SharedVariableDeclaration_slot_info,
1510   sizeof(IIR_SharedVariableDeclaration)
1511 };
1512 
1513 static tree_slot_info IIR_ConstantDeclaration_slot_info[] = {
1514 };
1515 
1516 tree_kind_info IR_CONSTANT_DECLARATION_kind_info = {
1517   97,
1518   "IIR_ConstantDeclaration",
1519   &fire_chunk_info,
1520   IR_OBJECT_DECLARATION,
1521   IR_CONSTANT_DECLARATION,
1522   0,
1523   0, 0, IIR_ConstantDeclaration_slot_info,
1524   sizeof(IIR_ConstantDeclaration)
1525 };
1526 
1527 static tree_slot_info IIR_TypeDeclaration_slot_info[] = {
1528   { IR_TYPE, "type", (tree_base_node*tree_base_node::*)&IIR_TypeDeclaration::type },
1529 };
1530 
1531 tree_kind_info IR_TYPE_DECLARATION_kind_info = {
1532   98,
1533   "IIR_TypeDeclaration",
1534   &fire_chunk_info,
1535   IR_DECLARATION,
1536   IR_SUBTYPE_DECLARATION,
1537   0,
1538   1, 1, IIR_TypeDeclaration_slot_info,
1539   sizeof(IIR_TypeDeclaration)
1540 };
1541 
1542 static tree_slot_info IIR_SubtypeDeclaration_slot_info[] = {
1543 };
1544 
1545 tree_kind_info IR_SUBTYPE_DECLARATION_kind_info = {
1546   99,
1547   "IIR_SubtypeDeclaration",
1548   &fire_chunk_info,
1549   IR_TYPE_DECLARATION,
1550   IR_SUBTYPE_DECLARATION,
1551   0,
1552   0, 0, IIR_SubtypeDeclaration_slot_info,
1553   sizeof(IIR_SubtypeDeclaration)
1554 };
1555 
1556 static tree_slot_info IIR_ElementDeclaration_slot_info[] = {
1557   { IR_TYPE, "subtype", (tree_base_node*tree_base_node::*)&IIR_ElementDeclaration::subtype },
1558   { (tree_kind_info*)&int_ctype_info, "declaration_pos", (tree_base_node*tree_base_node::*)&IIR_ElementDeclaration::declaration_pos },
1559 };
1560 
1561 tree_kind_info IR_ELEMENT_DECLARATION_kind_info = {
1562   100,
1563   "IIR_ElementDeclaration",
1564   &fire_chunk_info,
1565   IR_DECLARATION,
1566   IR_ELEMENT_DECLARATION,
1567   0,
1568   1, 2, IIR_ElementDeclaration_slot_info,
1569   sizeof(IIR_ElementDeclaration)
1570 };
1571 
1572 static tree_slot_info IIR_EnumerationLiteral_slot_info[] = {
1573   { IR_ENUMERATION_TYPE, "subtype", (tree_base_node*tree_base_node::*)&IIR_EnumerationLiteral::subtype },
1574   { (tree_kind_info*)&int_ctype_info, "enum_pos", (tree_base_node*tree_base_node::*)&IIR_EnumerationLiteral::enum_pos },
1575 };
1576 
1577 tree_kind_info IR_ENUMERATION_LITERAL_kind_info = {
1578   101,
1579   "IIR_EnumerationLiteral",
1580   &fire_chunk_info,
1581   IR_DECLARATION,
1582   IR_ENUMERATION_LITERAL,
1583   0,
1584   1, 2, IIR_EnumerationLiteral_slot_info,
1585   sizeof(IIR_EnumerationLiteral)
1586 };
1587 
1588 static tree_slot_info IIR_DeclarativeRegion_slot_info[] = {
1589   { IR_DECLARATIVE_REGION, "continued", (tree_base_node*tree_base_node::*)&IIR_DeclarativeRegion::continued },
1590   { IR_DECLARATION_LIST, "declarations", (tree_base_node*tree_base_node::*)&IIR_DeclarativeRegion::declarations },
1591 };
1592 
1593 tree_kind_info IR_DECLARATIVE_REGION_kind_info = {
1594   102,
1595   "IIR_DeclarativeRegion",
1596   &fire_chunk_info,
1597   IR_DECLARATION,
1598   IR_LOOP_DECLARATIVE_REGION,
1599   0,
1600   2, 2, IIR_DeclarativeRegion_slot_info,
1601   sizeof(IIR_DeclarativeRegion)
1602 };
1603 
1604 static tree_slot_info IIR_ConcurrentStatement_slot_info[] = {
1605 };
1606 
1607 tree_kind_info IR_CONCURRENT_STATEMENT_kind_info = {
1608   103,
1609   "IIR_ConcurrentStatement",
1610   &fire_chunk_info,
1611   IR_DECLARATIVE_REGION,
1612   IR_BLOCK_STATEMENT,
1613   0,
1614   0, 0, IIR_ConcurrentStatement_slot_info,
1615   sizeof(IIR_ConcurrentStatement)
1616 };
1617 
1618 static tree_slot_info IIR_ConcurrentGenerateStatement_slot_info[] = {
1619   { IR_CONFIGURATION_SPECIFICATION_LIST, "configuration_specifications", (tree_base_node*tree_base_node::*)&IIR_ConcurrentGenerateStatement::configuration_specifications },
1620   { IR_CONCURRENT_STATEMENT_LIST, "concurrent_statement_part", (tree_base_node*tree_base_node::*)&IIR_ConcurrentGenerateStatement::concurrent_statement_part },
1621 };
1622 
1623 tree_kind_info IR_CONCURRENT_GENERATE_STATEMENT_kind_info = {
1624   104,
1625   "IIR_ConcurrentGenerateStatement",
1626   &fire_chunk_info,
1627   IR_CONCURRENT_STATEMENT,
1628   IR_CONCURRENT_GENERATE_FOR_STATEMENT,
1629   0,
1630   2, 2, IIR_ConcurrentGenerateStatement_slot_info,
1631   sizeof(IIR_ConcurrentGenerateStatement)
1632 };
1633 
1634 static tree_slot_info IIR_ConcurrentGenerateIfStatement_slot_info[] = {
1635   { IR_EXPRESSION, "condition", (tree_base_node*tree_base_node::*)&IIR_ConcurrentGenerateIfStatement::condition },
1636 };
1637 
1638 tree_kind_info IR_CONCURRENT_GENERATE_IF_STATEMENT_kind_info = {
1639   105,
1640   "IIR_ConcurrentGenerateIfStatement",
1641   &fire_chunk_info,
1642   IR_CONCURRENT_GENERATE_STATEMENT,
1643   IR_CONCURRENT_GENERATE_IF_STATEMENT,
1644   0,
1645   1, 1, IIR_ConcurrentGenerateIfStatement_slot_info,
1646   sizeof(IIR_ConcurrentGenerateIfStatement)
1647 };
1648 
1649 static tree_slot_info IIR_ConcurrentGenerateForStatement_slot_info[] = {
1650   { IR_CONSTANT_DECLARATION, "generate_parameter_specification", (tree_base_node*tree_base_node::*)&IIR_ConcurrentGenerateForStatement::generate_parameter_specification },
1651 };
1652 
1653 tree_kind_info IR_CONCURRENT_GENERATE_FOR_STATEMENT_kind_info = {
1654   106,
1655   "IIR_ConcurrentGenerateForStatement",
1656   &fire_chunk_info,
1657   IR_CONCURRENT_GENERATE_STATEMENT,
1658   IR_CONCURRENT_GENERATE_FOR_STATEMENT,
1659   0,
1660   1, 1, IIR_ConcurrentGenerateForStatement_slot_info,
1661   sizeof(IIR_ConcurrentGenerateForStatement)
1662 };
1663 
1664 static tree_slot_info IIR_ComponentInstantiationStatement_slot_info[] = {
1665   { IR_BINDING_INDICATION, "binding", (tree_base_node*tree_base_node::*)&IIR_ComponentInstantiationStatement::binding },
1666   { IR_BINDING_INDICATION, "configuration", (tree_base_node*tree_base_node::*)&IIR_ComponentInstantiationStatement::configuration },
1667 };
1668 
1669 tree_kind_info IR_COMPONENT_INSTANTIATION_STATEMENT_kind_info = {
1670   107,
1671   "IIR_ComponentInstantiationStatement",
1672   &fire_chunk_info,
1673   IR_CONCURRENT_STATEMENT,
1674   IR_COMPONENT_INSTANTIATION_STATEMENT,
1675   0,
1676   2, 2, IIR_ComponentInstantiationStatement_slot_info,
1677   sizeof(IIR_ComponentInstantiationStatement)
1678 };
1679 
1680 static tree_slot_info IIR_ProcessStatement_slot_info[] = {
1681   { IR_SEQUENTIAL_STATEMENT_LIST, "process_statement_part", (tree_base_node*tree_base_node::*)&IIR_ProcessStatement::process_statement_part },
1682   { (tree_kind_info*)&bool_ctype_info, "postponed", (tree_base_node*tree_base_node::*)&IIR_ProcessStatement::postponed },
1683   { (tree_kind_info*)&bool_ctype_info, "guarded", (tree_base_node*tree_base_node::*)&IIR_ProcessStatement::guarded },
1684 };
1685 
1686 tree_kind_info IR_PROCESS_STATEMENT_kind_info = {
1687   108,
1688   "IIR_ProcessStatement",
1689   &fire_chunk_info,
1690   IR_CONCURRENT_STATEMENT,
1691   IR_IMPLICIT_PROCESS_STATEMENT,
1692   0,
1693   1, 3, IIR_ProcessStatement_slot_info,
1694   sizeof(IIR_ProcessStatement)
1695 };
1696 
1697 static tree_slot_info IIR_SensitizedProcessStatement_slot_info[] = {
1698   { IR_EXPRESSION_LIST, "sensitivity_list", (tree_base_node*tree_base_node::*)&IIR_SensitizedProcessStatement::sensitivity_list },
1699 };
1700 
1701 tree_kind_info IR_SENSITIZED_PROCESS_STATEMENT_kind_info = {
1702   109,
1703   "IIR_SensitizedProcessStatement",
1704   &fire_chunk_info,
1705   IR_PROCESS_STATEMENT,
1706   IR_SENSITIZED_PROCESS_STATEMENT,
1707   0,
1708   1, 1, IIR_SensitizedProcessStatement_slot_info,
1709   sizeof(IIR_SensitizedProcessStatement)
1710 };
1711 
1712 static tree_slot_info IIR_ImplicitProcessStatement_slot_info[] = {
1713 };
1714 
1715 tree_kind_info IR_IMPLICIT_PROCESS_STATEMENT_kind_info = {
1716   110,
1717   "IIR_ImplicitProcessStatement",
1718   &fire_chunk_info,
1719   IR_PROCESS_STATEMENT,
1720   IR_IMPLICIT_PROCESS_STATEMENT,
1721   0,
1722   0, 0, IIR_ImplicitProcessStatement_slot_info,
1723   sizeof(IIR_ImplicitProcessStatement)
1724 };
1725 
1726 static tree_slot_info IIR_BlockStatement_slot_info[] = {
1727   { IR_EXPRESSION, "guard_expression", (tree_base_node*tree_base_node::*)&IIR_BlockStatement::guard_expression },
1728   { IR_INTERFACE_LIST, "generic_clause", (tree_base_node*tree_base_node::*)&IIR_BlockStatement::generic_clause },
1729   { IR_ASSOCIATION_LIST, "generic_map_aspect", (tree_base_node*tree_base_node::*)&IIR_BlockStatement::generic_map_aspect },
1730   { IR_INTERFACE_LIST, "port_clause", (tree_base_node*tree_base_node::*)&IIR_BlockStatement::port_clause },
1731   { IR_ASSOCIATION_LIST, "port_map_aspect", (tree_base_node*tree_base_node::*)&IIR_BlockStatement::port_map_aspect },
1732   { IR_CONFIGURATION_SPECIFICATION_LIST, "configuration_specifications", (tree_base_node*tree_base_node::*)&IIR_BlockStatement::configuration_specifications },
1733   { IR_CONCURRENT_STATEMENT_LIST, "block_statement_part", (tree_base_node*tree_base_node::*)&IIR_BlockStatement::block_statement_part },
1734 };
1735 
1736 tree_kind_info IR_BLOCK_STATEMENT_kind_info = {
1737   111,
1738   "IIR_BlockStatement",
1739   &fire_chunk_info,
1740   IR_CONCURRENT_STATEMENT,
1741   IR_BLOCK_STATEMENT,
1742   0,
1743   7, 7, IIR_BlockStatement_slot_info,
1744   sizeof(IIR_BlockStatement)
1745 };
1746 
1747 static tree_slot_info IIR_ConfigurationItem_slot_info[] = {
1748 };
1749 
1750 tree_kind_info IR_CONFIGURATION_ITEM_kind_info = {
1751   112,
1752   "IIR_ConfigurationItem",
1753   &fire_chunk_info,
1754   IR_DECLARATIVE_REGION,
1755   IR_BLOCK_CONFIGURATION,
1756   0,
1757   0, 0, IIR_ConfigurationItem_slot_info,
1758   sizeof(IIR_ConfigurationItem)
1759 };
1760 
1761 static tree_slot_info IIR_ComponentConfiguration_slot_info[] = {
1762   { IR_LIBRARY_UNIT, "entity_aspect", (tree_base_node*tree_base_node::*)&IIR_ComponentConfiguration::entity_aspect },
1763   { IR_COMPONENT_INSTANTIATION_LIST, "instantiation_list", (tree_base_node*tree_base_node::*)&IIR_ComponentConfiguration::instantiation_list },
1764   { IR_ASSOCIATION_LIST, "generic_map_aspect", (tree_base_node*tree_base_node::*)&IIR_ComponentConfiguration::generic_map_aspect },
1765   { IR_ASSOCIATION_LIST, "port_map_aspect", (tree_base_node*tree_base_node::*)&IIR_ComponentConfiguration::port_map_aspect },
1766   { IR_BLOCK_CONFIGURATION, "block_config", (tree_base_node*tree_base_node::*)&IIR_ComponentConfiguration::block_config },
1767 };
1768 
1769 tree_kind_info IR_COMPONENT_CONFIGURATION_kind_info = {
1770   113,
1771   "IIR_ComponentConfiguration",
1772   &fire_chunk_info,
1773   IR_CONFIGURATION_ITEM,
1774   IR_COMPONENT_CONFIGURATION,
1775   0,
1776   5, 5, IIR_ComponentConfiguration_slot_info,
1777   sizeof(IIR_ComponentConfiguration)
1778 };
1779 
1780 static tree_slot_info IIR_BlockConfiguration_slot_info[] = {
1781   { IR_DECLARATIVE_REGION, "block_specification", (tree_base_node*tree_base_node::*)&IIR_BlockConfiguration::block_specification },
1782   { IR_DECLARATION_LIST, "use_clause_list", (tree_base_node*tree_base_node::*)&IIR_BlockConfiguration::use_clause_list },
1783   { IR_CONFIGURATION_ITEM_LIST, "configuration_item_list", (tree_base_node*tree_base_node::*)&IIR_BlockConfiguration::configuration_item_list },
1784 };
1785 
1786 tree_kind_info IR_BLOCK_CONFIGURATION_kind_info = {
1787   114,
1788   "IIR_BlockConfiguration",
1789   &fire_chunk_info,
1790   IR_CONFIGURATION_ITEM,
1791   IR_BLOCK_CONFIGURATION,
1792   0,
1793   3, 3, IIR_BlockConfiguration_slot_info,
1794   sizeof(IIR_BlockConfiguration)
1795 };
1796 
1797 static tree_slot_info IIR_ArchitectureRef_slot_info[] = {
1798   { IR_ENTITY_DECLARATION, "entity", (tree_base_node*tree_base_node::*)&IIR_ArchitectureRef::entity },
1799   { IR_TEXT_LITERAL, "architecture_name", (tree_base_node*tree_base_node::*)&IIR_ArchitectureRef::architecture_name },
1800 };
1801 
1802 tree_kind_info IR_ARCHITECTURE_REF_kind_info = {
1803   115,
1804   "IIR_ArchitectureRef",
1805   &fire_chunk_info,
1806   IR_DECLARATIVE_REGION,
1807   IR_ARCHITECTURE_REF,
1808   0,
1809   2, 2, IIR_ArchitectureRef_slot_info,
1810   sizeof(IIR_ArchitectureRef)
1811 };
1812 
1813 static tree_slot_info IIR_LibraryUnit_slot_info[] = {
1814   { IR_DECLARATION_LIST, "context_items", (tree_base_node*tree_base_node::*)&IIR_LibraryUnit::context_items },
1815   { IR_DECLARATION_LIST, "external_decls", (tree_base_node*tree_base_node::*)&IIR_LibraryUnit::external_decls },
1816   { IR_TEXT_LITERAL, "library_name", (tree_base_node*tree_base_node::*)&IIR_LibraryUnit::library_name },
1817   { IR_LIBRARY_UNIT_LIST, "used_units", (tree_base_node*tree_base_node::*)&IIR_LibraryUnit::used_units },
1818 };
1819 
1820 tree_kind_info IR_LIBRARY_UNIT_kind_info = {
1821   116,
1822   "IIR_LibraryUnit",
1823   &fire_chunk_info,
1824   IR_DECLARATIVE_REGION,
1825   IR_ENTITY_DECLARATION,
1826   0,
1827   4, 4, IIR_LibraryUnit_slot_info,
1828   sizeof(IIR_LibraryUnit)
1829 };
1830 
1831 static tree_slot_info IIR_ConfigurationDeclaration_slot_info[] = {
1832   { IR_BLOCK_CONFIGURATION, "block_configuration", (tree_base_node*tree_base_node::*)&IIR_ConfigurationDeclaration::block_configuration },
1833   { IR_ENTITY_DECLARATION, "entity", (tree_base_node*tree_base_node::*)&IIR_ConfigurationDeclaration::entity },
1834 };
1835 
1836 tree_kind_info IR_CONFIGURATION_DECLARATION_kind_info = {
1837   117,
1838   "IIR_ConfigurationDeclaration",
1839   &fire_chunk_info,
1840   IR_LIBRARY_UNIT,
1841   IR_CONFIGURATION_DECLARATION,
1842   0,
1843   2, 2, IIR_ConfigurationDeclaration_slot_info,
1844   sizeof(IIR_ConfigurationDeclaration)
1845 };
1846 
1847 static tree_slot_info IIR_PackageBodyDeclaration_slot_info[] = {
1848   { IR_PACKAGE_DECLARATION, "package", (tree_base_node*tree_base_node::*)&IIR_PackageBodyDeclaration::package },
1849 };
1850 
1851 tree_kind_info IR_PACKAGE_BODY_DECLARATION_kind_info = {
1852   118,
1853   "IIR_PackageBodyDeclaration",
1854   &fire_chunk_info,
1855   IR_LIBRARY_UNIT,
1856   IR_PACKAGE_BODY_DECLARATION,
1857   0,
1858   1, 1, IIR_PackageBodyDeclaration_slot_info,
1859   sizeof(IIR_PackageBodyDeclaration)
1860 };
1861 
1862 static tree_slot_info IIR_PackageDeclaration_slot_info[] = {
1863 };
1864 
1865 tree_kind_info IR_PACKAGE_DECLARATION_kind_info = {
1866   119,
1867   "IIR_PackageDeclaration",
1868   &fire_chunk_info,
1869   IR_LIBRARY_UNIT,
1870   IR_PACKAGE_DECLARATION,
1871   0,
1872   0, 0, IIR_PackageDeclaration_slot_info,
1873   sizeof(IIR_PackageDeclaration)
1874 };
1875 
1876 static tree_slot_info IIR_ArchitectureDeclaration_slot_info[] = {
1877   { IR_ENTITY_DECLARATION, "entity", (tree_base_node*tree_base_node::*)&IIR_ArchitectureDeclaration::entity },
1878   { IR_CONFIGURATION_SPECIFICATION_LIST, "configuration_specifications", (tree_base_node*tree_base_node::*)&IIR_ArchitectureDeclaration::configuration_specifications },
1879   { IR_CONCURRENT_STATEMENT_LIST, "architecture_statement_part", (tree_base_node*tree_base_node::*)&IIR_ArchitectureDeclaration::architecture_statement_part },
1880 };
1881 
1882 tree_kind_info IR_ARCHITECTURE_DECLARATION_kind_info = {
1883   120,
1884   "IIR_ArchitectureDeclaration",
1885   &fire_chunk_info,
1886   IR_LIBRARY_UNIT,
1887   IR_ARCHITECTURE_DECLARATION,
1888   0,
1889   3, 3, IIR_ArchitectureDeclaration_slot_info,
1890   sizeof(IIR_ArchitectureDeclaration)
1891 };
1892 
1893 static tree_slot_info IIR_EntityDeclaration_slot_info[] = {
1894   { IR_INTERFACE_LIST, "generic_clause", (tree_base_node*tree_base_node::*)&IIR_EntityDeclaration::generic_clause },
1895   { IR_INTERFACE_LIST, "port_clause", (tree_base_node*tree_base_node::*)&IIR_EntityDeclaration::port_clause },
1896   { IR_CONCURRENT_STATEMENT_LIST, "entity_statement_part", (tree_base_node*tree_base_node::*)&IIR_EntityDeclaration::entity_statement_part },
1897 };
1898 
1899 tree_kind_info IR_ENTITY_DECLARATION_kind_info = {
1900   121,
1901   "IIR_EntityDeclaration",
1902   &fire_chunk_info,
1903   IR_LIBRARY_UNIT,
1904   IR_ENTITY_DECLARATION,
1905   0,
1906   3, 3, IIR_EntityDeclaration_slot_info,
1907   sizeof(IIR_EntityDeclaration)
1908 };
1909 
1910 static tree_slot_info IIR_ComponentDeclaration_slot_info[] = {
1911   { IR_INTERFACE_LIST, "local_generic_clause", (tree_base_node*tree_base_node::*)&IIR_ComponentDeclaration::local_generic_clause },
1912   { IR_INTERFACE_LIST, "local_port_clause", (tree_base_node*tree_base_node::*)&IIR_ComponentDeclaration::local_port_clause },
1913 };
1914 
1915 tree_kind_info IR_COMPONENT_DECLARATION_kind_info = {
1916   122,
1917   "IIR_ComponentDeclaration",
1918   &fire_chunk_info,
1919   IR_DECLARATIVE_REGION,
1920   IR_COMPONENT_DECLARATION,
1921   0,
1922   2, 2, IIR_ComponentDeclaration_slot_info,
1923   sizeof(IIR_ComponentDeclaration)
1924 };
1925 
1926 static tree_slot_info IIR_SubprogramDeclaration_slot_info[] = {
1927   { IR_INTERFACE_LIST, "interface_declarations", (tree_base_node*tree_base_node::*)&IIR_SubprogramDeclaration::interface_declarations },
1928   { IR_SEQUENTIAL_STATEMENT_LIST, "subprogram_body", (tree_base_node*tree_base_node::*)&IIR_SubprogramDeclaration::subprogram_body },
1929   { IR_SUBPROGRAM_DECLARATION, "prototype", (tree_base_node*tree_base_node::*)&IIR_SubprogramDeclaration::prototype },
1930 };
1931 
1932 tree_kind_info IR_SUBPROGRAM_DECLARATION_kind_info = {
1933   123,
1934   "IIR_SubprogramDeclaration",
1935   &fire_chunk_info,
1936   IR_DECLARATIVE_REGION,
1937   IR_PREDEFINED_PROCEDURE_DECLARATION,
1938   0,
1939   3, 3, IIR_SubprogramDeclaration_slot_info,
1940   sizeof(IIR_SubprogramDeclaration)
1941 };
1942 
1943 static tree_slot_info IIR_FunctionDeclaration_slot_info[] = {
1944   { IR_TYPE, "return_type", (tree_base_node*tree_base_node::*)&IIR_FunctionDeclaration::return_type },
1945   { (tree_kind_info*)&bool_ctype_info, "pure", (tree_base_node*tree_base_node::*)&IIR_FunctionDeclaration::pure },
1946 };
1947 
1948 tree_kind_info IR_FUNCTION_DECLARATION_kind_info = {
1949   124,
1950   "IIR_FunctionDeclaration",
1951   &fire_chunk_info,
1952   IR_SUBPROGRAM_DECLARATION,
1953   IR_PREDEFINED_FUNCTION_DECLARATION,
1954   0,
1955   1, 2, IIR_FunctionDeclaration_slot_info,
1956   sizeof(IIR_FunctionDeclaration)
1957 };
1958 
1959 static tree_slot_info IIR_PredefinedFunctionDeclaration_slot_info[] = {
1960 };
1961 
1962 tree_kind_info IR_PREDEFINED_FUNCTION_DECLARATION_kind_info = {
1963   125,
1964   "IIR_PredefinedFunctionDeclaration",
1965   &fire_chunk_info,
1966   IR_FUNCTION_DECLARATION,
1967   IR_PREDEFINED_FUNCTION_DECLARATION,
1968   0,
1969   0, 0, IIR_PredefinedFunctionDeclaration_slot_info,
1970   sizeof(IIR_PredefinedFunctionDeclaration)
1971 };
1972 
1973 static tree_slot_info IIR_ProcedureDeclaration_slot_info[] = {
1974 };
1975 
1976 tree_kind_info IR_PROCEDURE_DECLARATION_kind_info = {
1977   126,
1978   "IIR_ProcedureDeclaration",
1979   &fire_chunk_info,
1980   IR_SUBPROGRAM_DECLARATION,
1981   IR_PREDEFINED_PROCEDURE_DECLARATION,
1982   0,
1983   0, 0, IIR_ProcedureDeclaration_slot_info,
1984   sizeof(IIR_ProcedureDeclaration)
1985 };
1986 
1987 static tree_slot_info IIR_PredefinedProcedureDeclaration_slot_info[] = {
1988 };
1989 
1990 tree_kind_info IR_PREDEFINED_PROCEDURE_DECLARATION_kind_info = {
1991   127,
1992   "IIR_PredefinedProcedureDeclaration",
1993   &fire_chunk_info,
1994   IR_PROCEDURE_DECLARATION,
1995   IR_PREDEFINED_PROCEDURE_DECLARATION,
1996   0,
1997   0, 0, IIR_PredefinedProcedureDeclaration_slot_info,
1998   sizeof(IIR_PredefinedProcedureDeclaration)
1999 };
2000 
2001 static tree_slot_info IIR_LoopDeclarativeRegion_slot_info[] = {
2002   { IR_LOOP_STATEMENT, "loop_statement", (tree_base_node*tree_base_node::*)&IIR_LoopDeclarativeRegion::loop_statement },
2003 };
2004 
2005 tree_kind_info IR_LOOP_DECLARATIVE_REGION_kind_info = {
2006   128,
2007   "IIR_LoopDeclarativeRegion",
2008   &fire_chunk_info,
2009   IR_DECLARATIVE_REGION,
2010   IR_LOOP_DECLARATIVE_REGION,
2011   0,
2012   1, 1, IIR_LoopDeclarativeRegion_slot_info,
2013   sizeof(IIR_LoopDeclarativeRegion)
2014 };
2015 
2016 static tree_slot_info IIR_Type_slot_info[] = {
2017   { IR_TYPE_DECLARATION, "declaration", (tree_base_node*tree_base_node::*)&IIR_Type::declaration },
2018   { IR_TYPE, "base", (tree_base_node*tree_base_node::*)&IIR_Type::base },
2019   { (tree_kind_info*)&IR_StaticLevel_ctype_info, "static_level", (tree_base_node*tree_base_node::*)&IIR_Type::static_level },
2020 };
2021 
2022 tree_kind_info IR_TYPE_kind_info = {
2023   129,
2024   "IIR_Type",
2025   &fire_chunk_info,
2026   IR_ROOT,
2027   IR_SCALAR_SUBTYPE,
2028   0,
2029   2, 3, IIR_Type_slot_info,
2030   sizeof(IIR_Type)
2031 };
2032 
2033 static tree_slot_info IIR_FileType_slot_info[] = {
2034   { IR_TYPE, "type_mark", (tree_base_node*tree_base_node::*)&IIR_FileType::type_mark },
2035 };
2036 
2037 tree_kind_info IR_FILE_TYPE_kind_info = {
2038   130,
2039   "IIR_FileType",
2040   &fire_chunk_info,
2041   IR_TYPE,
2042   IR_FILE_TYPE,
2043   0,
2044   1, 1, IIR_FileType_slot_info,
2045   sizeof(IIR_FileType)
2046 };
2047 
2048 static tree_slot_info IIR_AccessType_slot_info[] = {
2049   { IR_TYPE, "designated_type", (tree_base_node*tree_base_node::*)&IIR_AccessType::designated_type },
2050 };
2051 
2052 tree_kind_info IR_ACCESS_TYPE_kind_info = {
2053   131,
2054   "IIR_AccessType",
2055   &fire_chunk_info,
2056   IR_TYPE,
2057   IR_ACCESS_TYPE,
2058   0,
2059   1, 1, IIR_AccessType_slot_info,
2060   sizeof(IIR_AccessType)
2061 };
2062 
2063 static tree_slot_info IIR_CompositeType_slot_info[] = {
2064 };
2065 
2066 tree_kind_info IR_COMPOSITE_TYPE_kind_info = {
2067   132,
2068   "IIR_CompositeType",
2069   &fire_chunk_info,
2070   IR_TYPE,
2071   IR_RECORD_TYPE,
2072   0,
2073   0, 0, IIR_CompositeType_slot_info,
2074   sizeof(IIR_CompositeType)
2075 };
2076 
2077 static tree_slot_info IIR_ArrayType_slot_info[] = {
2078   { IR_TYPE_LIST, "index_types", (tree_base_node*tree_base_node::*)&IIR_ArrayType::index_types },
2079   { IR_TYPE, "element_type", (tree_base_node*tree_base_node::*)&IIR_ArrayType::element_type },
2080 };
2081 
2082 tree_kind_info IR_ARRAY_TYPE_kind_info = {
2083   133,
2084   "IIR_ArrayType",
2085   &fire_chunk_info,
2086   IR_COMPOSITE_TYPE,
2087   IR_ARRAY_TYPE,
2088   0,
2089   2, 2, IIR_ArrayType_slot_info,
2090   sizeof(IIR_ArrayType)
2091 };
2092 
2093 static tree_slot_info IIR_RecordType_slot_info[] = {
2094   { IR_ELEMENT_DECLARATION_LIST, "element_declarations", (tree_base_node*tree_base_node::*)&IIR_RecordType::element_declarations },
2095 };
2096 
2097 tree_kind_info IR_RECORD_TYPE_kind_info = {
2098   134,
2099   "IIR_RecordType",
2100   &fire_chunk_info,
2101   IR_COMPOSITE_TYPE,
2102   IR_RECORD_TYPE,
2103   0,
2104   1, 1, IIR_RecordType_slot_info,
2105   sizeof(IIR_RecordType)
2106 };
2107 
2108 static tree_slot_info IIR_ScalarType_slot_info[] = {
2109 };
2110 
2111 tree_kind_info IR_SCALAR_TYPE_kind_info = {
2112   135,
2113   "IIR_ScalarType",
2114   &fire_chunk_info,
2115   IR_TYPE,
2116   IR_ENUMERATION_TYPE,
2117   0,
2118   0, 0, IIR_ScalarType_slot_info,
2119   sizeof(IIR_ScalarType)
2120 };
2121 
2122 static tree_slot_info IIR_PhysicalType_slot_info[] = {
2123   { IR_PHYSICAL_UNIT, "primary_unit", (tree_base_node*tree_base_node::*)&IIR_PhysicalType::primary_unit },
2124   { IR_UNIT_LIST, "units", (tree_base_node*tree_base_node::*)&IIR_PhysicalType::units },
2125 };
2126 
2127 tree_kind_info IR_PHYSICAL_TYPE_kind_info = {
2128   136,
2129   "IIR_PhysicalType",
2130   &fire_chunk_info,
2131   IR_SCALAR_TYPE,
2132   IR_PHYSICAL_TYPE,
2133   0,
2134   2, 2, IIR_PhysicalType_slot_info,
2135   sizeof(IIR_PhysicalType)
2136 };
2137 
2138 static tree_slot_info IIR_FloatingType_slot_info[] = {
2139 };
2140 
2141 tree_kind_info IR_FLOATING_TYPE_kind_info = {
2142   137,
2143   "IIR_FloatingType",
2144   &fire_chunk_info,
2145   IR_SCALAR_TYPE,
2146   IR_FLOATING_TYPE,
2147   0,
2148   0, 0, IIR_FloatingType_slot_info,
2149   sizeof(IIR_FloatingType)
2150 };
2151 
2152 static tree_slot_info IIR_IntegerType_slot_info[] = {
2153 };
2154 
2155 tree_kind_info IR_INTEGER_TYPE_kind_info = {
2156   138,
2157   "IIR_IntegerType",
2158   &fire_chunk_info,
2159   IR_SCALAR_TYPE,
2160   IR_INTEGER_TYPE,
2161   0,
2162   0, 0, IIR_IntegerType_slot_info,
2163   sizeof(IIR_IntegerType)
2164 };
2165 
2166 static tree_slot_info IIR_EnumerationType_slot_info[] = {
2167   { IR_ENUMERATION_LITERAL_LIST, "enumeration_literals", (tree_base_node*tree_base_node::*)&IIR_EnumerationType::enumeration_literals },
2168 };
2169 
2170 tree_kind_info IR_ENUMERATION_TYPE_kind_info = {
2171   139,
2172   "IIR_EnumerationType",
2173   &fire_chunk_info,
2174   IR_SCALAR_TYPE,
2175   IR_ENUMERATION_TYPE,
2176   0,
2177   1, 1, IIR_EnumerationType_slot_info,
2178   sizeof(IIR_EnumerationType)
2179 };
2180 
2181 static tree_slot_info IIR_Subtype_slot_info[] = {
2182   { IR_TYPE, "immediate_base", (tree_base_node*tree_base_node::*)&IIR_Subtype::immediate_base },
2183   { IR_FUNCTION_DECLARATION, "resolution_function", (tree_base_node*tree_base_node::*)&IIR_Subtype::resolution_function },
2184 };
2185 
2186 tree_kind_info IR_SUBTYPE_kind_info = {
2187   140,
2188   "IIR_Subtype",
2189   &fire_chunk_info,
2190   IR_TYPE,
2191   IR_SCALAR_SUBTYPE,
2192   0,
2193   2, 2, IIR_Subtype_slot_info,
2194   sizeof(IIR_Subtype)
2195 };
2196 
2197 static tree_slot_info IIR_ArraySubtype_slot_info[] = {
2198   { IR_TYPE_LIST, "constraint", (tree_base_node*tree_base_node::*)&IIR_ArraySubtype::constraint },
2199 };
2200 
2201 tree_kind_info IR_ARRAY_SUBTYPE_kind_info = {
2202   141,
2203   "IIR_ArraySubtype",
2204   &fire_chunk_info,
2205   IR_SUBTYPE,
2206   IR_ARRAY_SUBTYPE,
2207   0,
2208   1, 1, IIR_ArraySubtype_slot_info,
2209   sizeof(IIR_ArraySubtype)
2210 };
2211 
2212 static tree_slot_info IIR_RecordSubtype_slot_info[] = {
2213 };
2214 
2215 tree_kind_info IR_RECORD_SUBTYPE_kind_info = {
2216   142,
2217   "IIR_RecordSubtype",
2218   &fire_chunk_info,
2219   IR_SUBTYPE,
2220   IR_RECORD_SUBTYPE,
2221   0,
2222   0, 0, IIR_RecordSubtype_slot_info,
2223   sizeof(IIR_RecordSubtype)
2224 };
2225 
2226 static tree_slot_info IIR_ScalarSubtype_slot_info[] = {
2227   { IR_RANGE, "range", (tree_base_node*tree_base_node::*)&IIR_ScalarSubtype::range },
2228 };
2229 
2230 tree_kind_info IR_SCALAR_SUBTYPE_kind_info = {
2231   143,
2232   "IIR_ScalarSubtype",
2233   &fire_chunk_info,
2234   IR_SUBTYPE,
2235   IR_SCALAR_SUBTYPE,
2236   0,
2237   1, 1, IIR_ScalarSubtype_slot_info,
2238   sizeof(IIR_ScalarSubtype)
2239 };
2240 
2241 static tree_slot_info IIR_Range_slot_info[] = {
2242 };
2243 
2244 tree_kind_info IR_RANGE_kind_info = {
2245   144,
2246   "IIR_Range",
2247   &fire_chunk_info,
2248   IR_ROOT,
2249   IR_EXPLICIT_RANGE,
2250   0,
2251   0, 0, IIR_Range_slot_info,
2252   sizeof(IIR_Range)
2253 };
2254 
2255 static tree_slot_info IIR_ArrayRange_slot_info[] = {
2256   { IR_TYPE, "type", (tree_base_node*tree_base_node::*)&IIR_ArrayRange::type },
2257   { IR_EXPRESSION, "array", (tree_base_node*tree_base_node::*)&IIR_ArrayRange::array },
2258   { IR_TYPE, "array_type", (tree_base_node*tree_base_node::*)&IIR_ArrayRange::array_type },
2259   { IR_EXPRESSION, "index", (tree_base_node*tree_base_node::*)&IIR_ArrayRange::index },
2260 };
2261 
2262 tree_kind_info IR_ARRAY_RANGE_kind_info = {
2263   145,
2264   "IIR_ArrayRange",
2265   &fire_chunk_info,
2266   IR_RANGE,
2267   IR_ATTR_ARRAY_RANGE,
2268   0,
2269   4, 4, IIR_ArrayRange_slot_info,
2270   sizeof(IIR_ArrayRange)
2271 };
2272 
2273 static tree_slot_info IIR_Attr_ArrayREVERSE_RANGE_slot_info[] = {
2274 };
2275 
2276 tree_kind_info IR_ATTR_ARRAY_REVERSE_RANGE_kind_info = {
2277   146,
2278   "IIR_Attr_ArrayREVERSE_RANGE",
2279   &fire_chunk_info,
2280   IR_ARRAY_RANGE,
2281   IR_ATTR_ARRAY_REVERSE_RANGE,
2282   0,
2283   0, 0, IIR_Attr_ArrayREVERSE_RANGE_slot_info,
2284   sizeof(IIR_Attr_ArrayREVERSE_RANGE)
2285 };
2286 
2287 static tree_slot_info IIR_Attr_ArrayRANGE_slot_info[] = {
2288 };
2289 
2290 tree_kind_info IR_ATTR_ARRAY_RANGE_kind_info = {
2291   147,
2292   "IIR_Attr_ArrayRANGE",
2293   &fire_chunk_info,
2294   IR_ARRAY_RANGE,
2295   IR_ATTR_ARRAY_RANGE,
2296   0,
2297   0, 0, IIR_Attr_ArrayRANGE_slot_info,
2298   sizeof(IIR_Attr_ArrayRANGE)
2299 };
2300 
2301 static tree_slot_info IIR_ExplicitRange_slot_info[] = {
2302   { IR_EXPRESSION, "left", (tree_base_node*tree_base_node::*)&IIR_ExplicitRange::left },
2303   { IR_EXPRESSION, "right", (tree_base_node*tree_base_node::*)&IIR_ExplicitRange::right },
2304   { (tree_kind_info*)&IR_Direction_ctype_info, "direction", (tree_base_node*tree_base_node::*)&IIR_ExplicitRange::direction },
2305 };
2306 
2307 tree_kind_info IR_EXPLICIT_RANGE_kind_info = {
2308   148,
2309   "IIR_ExplicitRange",
2310   &fire_chunk_info,
2311   IR_RANGE,
2312   IR_EXPLICIT_RANGE,
2313   0,
2314   2, 3, IIR_ExplicitRange_slot_info,
2315   sizeof(IIR_ExplicitRange)
2316 };
2317 
2318 static tree_slot_info IIR_List_slot_info[] = {
2319 };
2320 
2321 tree_kind_info IR_LIST_kind_info = {
2322   149,
2323   "IIR_List",
2324   &fire_chunk_info,
2325   IR_ROOT,
2326   IR_ASSOCIATION_LIST,
2327   0,
2328   0, 0, IIR_List_slot_info,
2329   sizeof(IIR_List)
2330 };
2331 
2332 static tree_slot_info IIR_IdentifierList_slot_info[] = {
2333   { IR_IDENTIFIER, "first", (tree_base_node*tree_base_node::*)&IIR_IdentifierList::first },
2334   { IR_IDENTIFIER_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_IdentifierList::rest },
2335 };
2336 
2337 tree_kind_info IR_IDENTIFIER_LIST_kind_info = {
2338   150,
2339   "IIR_IdentifierList",
2340   &fire_chunk_info,
2341   IR_LIST,
2342   IR_IDENTIFIER_LIST,
2343   0,
2344   2, 2, IIR_IdentifierList_slot_info,
2345   sizeof(IIR_IdentifierList)
2346 };
2347 
2348 static tree_slot_info IIR_ConfigurationSpecificationList_slot_info[] = {
2349   { IR_CONFIGURATION_SPECIFICATION, "first", (tree_base_node*tree_base_node::*)&IIR_ConfigurationSpecificationList::first },
2350   { IR_CONFIGURATION_SPECIFICATION_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_ConfigurationSpecificationList::rest },
2351 };
2352 
2353 tree_kind_info IR_CONFIGURATION_SPECIFICATION_LIST_kind_info = {
2354   151,
2355   "IIR_ConfigurationSpecificationList",
2356   &fire_chunk_info,
2357   IR_LIST,
2358   IR_CONFIGURATION_SPECIFICATION_LIST,
2359   0,
2360   2, 2, IIR_ConfigurationSpecificationList_slot_info,
2361   sizeof(IIR_ConfigurationSpecificationList)
2362 };
2363 
2364 static tree_slot_info IIR_ComponentInstantiationList_slot_info[] = {
2365   { IR_COMPONENT_INSTANTIATION_STATEMENT, "first", (tree_base_node*tree_base_node::*)&IIR_ComponentInstantiationList::first },
2366   { IR_COMPONENT_INSTANTIATION_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_ComponentInstantiationList::rest },
2367 };
2368 
2369 tree_kind_info IR_COMPONENT_INSTANTIATION_LIST_kind_info = {
2370   152,
2371   "IIR_ComponentInstantiationList",
2372   &fire_chunk_info,
2373   IR_LIST,
2374   IR_COMPONENT_INSTANTIATION_LIST,
2375   0,
2376   2, 2, IIR_ComponentInstantiationList_slot_info,
2377   sizeof(IIR_ComponentInstantiationList)
2378 };
2379 
2380 static tree_slot_info IIR_ElementAssociationList_slot_info[] = {
2381   { IR_ELEMENT_ASSOCIATION, "first", (tree_base_node*tree_base_node::*)&IIR_ElementAssociationList::first },
2382   { IR_ELEMENT_ASSOCIATION_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_ElementAssociationList::rest },
2383 };
2384 
2385 tree_kind_info IR_ELEMENT_ASSOCIATION_LIST_kind_info = {
2386   153,
2387   "IIR_ElementAssociationList",
2388   &fire_chunk_info,
2389   IR_LIST,
2390   IR_ELEMENT_ASSOCIATION_LIST,
2391   0,
2392   2, 2, IIR_ElementAssociationList_slot_info,
2393   sizeof(IIR_ElementAssociationList)
2394 };
2395 
2396 static tree_slot_info IIR_IndexedAssociationList_slot_info[] = {
2397   { IR_INDEXED_ASSOCIATION, "first", (tree_base_node*tree_base_node::*)&IIR_IndexedAssociationList::first },
2398   { IR_INDEXED_ASSOCIATION_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_IndexedAssociationList::rest },
2399 };
2400 
2401 tree_kind_info IR_INDEXED_ASSOCIATION_LIST_kind_info = {
2402   154,
2403   "IIR_IndexedAssociationList",
2404   &fire_chunk_info,
2405   IR_LIST,
2406   IR_INDEXED_ASSOCIATION_LIST,
2407   0,
2408   2, 2, IIR_IndexedAssociationList_slot_info,
2409   sizeof(IIR_IndexedAssociationList)
2410 };
2411 
2412 static tree_slot_info IIR_ExpressionList_slot_info[] = {
2413   { IR_EXPRESSION, "first", (tree_base_node*tree_base_node::*)&IIR_ExpressionList::first },
2414   { IR_EXPRESSION_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_ExpressionList::rest },
2415 };
2416 
2417 tree_kind_info IR_EXPRESSION_LIST_kind_info = {
2418   155,
2419   "IIR_ExpressionList",
2420   &fire_chunk_info,
2421   IR_LIST,
2422   IR_EXPRESSION_LIST,
2423   0,
2424   2, 2, IIR_ExpressionList_slot_info,
2425   sizeof(IIR_ExpressionList)
2426 };
2427 
2428 static tree_slot_info IIR_TypeList_slot_info[] = {
2429   { IR_TYPE, "first", (tree_base_node*tree_base_node::*)&IIR_TypeList::first },
2430   { IR_TYPE_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_TypeList::rest },
2431 };
2432 
2433 tree_kind_info IR_TYPE_LIST_kind_info = {
2434   156,
2435   "IIR_TypeList",
2436   &fire_chunk_info,
2437   IR_LIST,
2438   IR_TYPE_LIST,
2439   0,
2440   2, 2, IIR_TypeList_slot_info,
2441   sizeof(IIR_TypeList)
2442 };
2443 
2444 static tree_slot_info IIR_WaveformList_slot_info[] = {
2445   { IR_WAVEFORM_ELEMENT, "first", (tree_base_node*tree_base_node::*)&IIR_WaveformList::first },
2446   { IR_WAVEFORM_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_WaveformList::rest },
2447 };
2448 
2449 tree_kind_info IR_WAVEFORM_LIST_kind_info = {
2450   157,
2451   "IIR_WaveformList",
2452   &fire_chunk_info,
2453   IR_LIST,
2454   IR_WAVEFORM_LIST,
2455   0,
2456   2, 2, IIR_WaveformList_slot_info,
2457   sizeof(IIR_WaveformList)
2458 };
2459 
2460 static tree_slot_info IIR_UnitList_slot_info[] = {
2461   { IR_PHYSICAL_UNIT, "first", (tree_base_node*tree_base_node::*)&IIR_UnitList::first },
2462   { IR_UNIT_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_UnitList::rest },
2463 };
2464 
2465 tree_kind_info IR_UNIT_LIST_kind_info = {
2466   158,
2467   "IIR_UnitList",
2468   &fire_chunk_info,
2469   IR_LIST,
2470   IR_UNIT_LIST,
2471   0,
2472   2, 2, IIR_UnitList_slot_info,
2473   sizeof(IIR_UnitList)
2474 };
2475 
2476 static tree_slot_info IIR_SequentialStatementList_slot_info[] = {
2477   { IR_SEQUENTIAL_STATEMENT, "first", (tree_base_node*tree_base_node::*)&IIR_SequentialStatementList::first },
2478   { IR_SEQUENTIAL_STATEMENT_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_SequentialStatementList::rest },
2479 };
2480 
2481 tree_kind_info IR_SEQUENTIAL_STATEMENT_LIST_kind_info = {
2482   159,
2483   "IIR_SequentialStatementList",
2484   &fire_chunk_info,
2485   IR_LIST,
2486   IR_SEQUENTIAL_STATEMENT_LIST,
2487   0,
2488   2, 2, IIR_SequentialStatementList_slot_info,
2489   sizeof(IIR_SequentialStatementList)
2490 };
2491 
2492 static tree_slot_info IIR_LibraryUnitList_slot_info[] = {
2493   { IR_LIBRARY_UNIT, "first", (tree_base_node*tree_base_node::*)&IIR_LibraryUnitList::first },
2494   { IR_LIBRARY_UNIT_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_LibraryUnitList::rest },
2495 };
2496 
2497 tree_kind_info IR_LIBRARY_UNIT_LIST_kind_info = {
2498   160,
2499   "IIR_LibraryUnitList",
2500   &fire_chunk_info,
2501   IR_LIST,
2502   IR_LIBRARY_UNIT_LIST,
2503   0,
2504   2, 2, IIR_LibraryUnitList_slot_info,
2505   sizeof(IIR_LibraryUnitList)
2506 };
2507 
2508 static tree_slot_info IIR_InterfaceList_slot_info[] = {
2509   { IR_INTERFACE_DECLARATION, "first", (tree_base_node*tree_base_node::*)&IIR_InterfaceList::first },
2510   { IR_INTERFACE_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_InterfaceList::rest },
2511 };
2512 
2513 tree_kind_info IR_INTERFACE_LIST_kind_info = {
2514   161,
2515   "IIR_InterfaceList",
2516   &fire_chunk_info,
2517   IR_LIST,
2518   IR_INTERFACE_LIST,
2519   0,
2520   2, 2, IIR_InterfaceList_slot_info,
2521   sizeof(IIR_InterfaceList)
2522 };
2523 
2524 static tree_slot_info IIR_EnumerationLiteralList_slot_info[] = {
2525   { IR_ENUMERATION_LITERAL, "first", (tree_base_node*tree_base_node::*)&IIR_EnumerationLiteralList::first },
2526   { IR_ENUMERATION_LITERAL_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_EnumerationLiteralList::rest },
2527 };
2528 
2529 tree_kind_info IR_ENUMERATION_LITERAL_LIST_kind_info = {
2530   162,
2531   "IIR_EnumerationLiteralList",
2532   &fire_chunk_info,
2533   IR_LIST,
2534   IR_ENUMERATION_LITERAL_LIST,
2535   0,
2536   2, 2, IIR_EnumerationLiteralList_slot_info,
2537   sizeof(IIR_EnumerationLiteralList)
2538 };
2539 
2540 static tree_slot_info IIR_EntityClassEntryList_slot_info[] = {
2541   { IR_ENTITY_CLASS_ENTRY, "first", (tree_base_node*tree_base_node::*)&IIR_EntityClassEntryList::first },
2542   { IR_ENTITY_CLASS_ENTRY_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_EntityClassEntryList::rest },
2543 };
2544 
2545 tree_kind_info IR_ENTITY_CLASS_ENTRY_LIST_kind_info = {
2546   163,
2547   "IIR_EntityClassEntryList",
2548   &fire_chunk_info,
2549   IR_LIST,
2550   IR_ENTITY_CLASS_ENTRY_LIST,
2551   0,
2552   2, 2, IIR_EntityClassEntryList_slot_info,
2553   sizeof(IIR_EntityClassEntryList)
2554 };
2555 
2556 static tree_slot_info IIR_ElementDeclarationList_slot_info[] = {
2557   { IR_ELEMENT_DECLARATION, "first", (tree_base_node*tree_base_node::*)&IIR_ElementDeclarationList::first },
2558   { IR_ELEMENT_DECLARATION_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_ElementDeclarationList::rest },
2559 };
2560 
2561 tree_kind_info IR_ELEMENT_DECLARATION_LIST_kind_info = {
2562   164,
2563   "IIR_ElementDeclarationList",
2564   &fire_chunk_info,
2565   IR_LIST,
2566   IR_ELEMENT_DECLARATION_LIST,
2567   0,
2568   2, 2, IIR_ElementDeclarationList_slot_info,
2569   sizeof(IIR_ElementDeclarationList)
2570 };
2571 
2572 static tree_slot_info IIR_DeclarationList_slot_info[] = {
2573   { IR_DECLARATION, "first", (tree_base_node*tree_base_node::*)&IIR_DeclarationList::first },
2574   { IR_DECLARATION_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_DeclarationList::rest },
2575 };
2576 
2577 tree_kind_info IR_DECLARATION_LIST_kind_info = {
2578   165,
2579   "IIR_DeclarationList",
2580   &fire_chunk_info,
2581   IR_LIST,
2582   IR_DECLARATION_LIST,
2583   0,
2584   2, 2, IIR_DeclarationList_slot_info,
2585   sizeof(IIR_DeclarationList)
2586 };
2587 
2588 static tree_slot_info IIR_ConfigurationItemList_slot_info[] = {
2589   { IR_CONFIGURATION_ITEM, "first", (tree_base_node*tree_base_node::*)&IIR_ConfigurationItemList::first },
2590   { IR_CONFIGURATION_ITEM_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_ConfigurationItemList::rest },
2591 };
2592 
2593 tree_kind_info IR_CONFIGURATION_ITEM_LIST_kind_info = {
2594   166,
2595   "IIR_ConfigurationItemList",
2596   &fire_chunk_info,
2597   IR_LIST,
2598   IR_CONFIGURATION_ITEM_LIST,
2599   0,
2600   2, 2, IIR_ConfigurationItemList_slot_info,
2601   sizeof(IIR_ConfigurationItemList)
2602 };
2603 
2604 static tree_slot_info IIR_ConcurrentStatementList_slot_info[] = {
2605   { IR_CONCURRENT_STATEMENT, "first", (tree_base_node*tree_base_node::*)&IIR_ConcurrentStatementList::first },
2606   { IR_CONCURRENT_STATEMENT_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_ConcurrentStatementList::rest },
2607 };
2608 
2609 tree_kind_info IR_CONCURRENT_STATEMENT_LIST_kind_info = {
2610   167,
2611   "IIR_ConcurrentStatementList",
2612   &fire_chunk_info,
2613   IR_LIST,
2614   IR_CONCURRENT_STATEMENT_LIST,
2615   0,
2616   2, 2, IIR_ConcurrentStatementList_slot_info,
2617   sizeof(IIR_ConcurrentStatementList)
2618 };
2619 
2620 static tree_slot_info IIR_ChoiceList_slot_info[] = {
2621   { IR_CHOICE, "first", (tree_base_node*tree_base_node::*)&IIR_ChoiceList::first },
2622   { IR_CHOICE_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_ChoiceList::rest },
2623 };
2624 
2625 tree_kind_info IR_CHOICE_LIST_kind_info = {
2626   168,
2627   "IIR_ChoiceList",
2628   &fire_chunk_info,
2629   IR_LIST,
2630   IR_CHOICE_LIST,
2631   0,
2632   2, 2, IIR_ChoiceList_slot_info,
2633   sizeof(IIR_ChoiceList)
2634 };
2635 
2636 static tree_slot_info IIR_CaseStatementAlternativeList_slot_info[] = {
2637   { IR_CASE_STATEMENT_ALTERNATIVE, "first", (tree_base_node*tree_base_node::*)&IIR_CaseStatementAlternativeList::first },
2638   { IR_CASE_STATEMENT_ALTERNATIVE_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_CaseStatementAlternativeList::rest },
2639 };
2640 
2641 tree_kind_info IR_CASE_STATEMENT_ALTERNATIVE_LIST_kind_info = {
2642   169,
2643   "IIR_CaseStatementAlternativeList",
2644   &fire_chunk_info,
2645   IR_LIST,
2646   IR_CASE_STATEMENT_ALTERNATIVE_LIST,
2647   0,
2648   2, 2, IIR_CaseStatementAlternativeList_slot_info,
2649   sizeof(IIR_CaseStatementAlternativeList)
2650 };
2651 
2652 static tree_slot_info IIR_AttributeValueList_slot_info[] = {
2653   { IR_ATTRIBUTE_VALUE, "first", (tree_base_node*tree_base_node::*)&IIR_AttributeValueList::first },
2654   { IR_ATTRIBUTE_VALUE_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_AttributeValueList::rest },
2655 };
2656 
2657 tree_kind_info IR_ATTRIBUTE_VALUE_LIST_kind_info = {
2658   170,
2659   "IIR_AttributeValueList",
2660   &fire_chunk_info,
2661   IR_LIST,
2662   IR_ATTRIBUTE_VALUE_LIST,
2663   0,
2664   2, 2, IIR_AttributeValueList_slot_info,
2665   sizeof(IIR_AttributeValueList)
2666 };
2667 
2668 static tree_slot_info IIR_AssociationList_slot_info[] = {
2669   { IR_ASSOCIATION_ELEMENT, "first", (tree_base_node*tree_base_node::*)&IIR_AssociationList::first },
2670   { IR_ASSOCIATION_LIST, "rest", (tree_base_node*tree_base_node::*)&IIR_AssociationList::rest },
2671 };
2672 
2673 tree_kind_info IR_ASSOCIATION_LIST_kind_info = {
2674   171,
2675   "IIR_AssociationList",
2676   &fire_chunk_info,
2677   IR_LIST,
2678   IR_ASSOCIATION_LIST,
2679   0,
2680   2, 2, IIR_AssociationList_slot_info,
2681   sizeof(IIR_AssociationList)
2682 };
2683 
2684 static tree_slot_info IIR_Tuple_slot_info[] = {
2685 };
2686 
2687 tree_kind_info IR_TUPLE_kind_info = {
2688   172,
2689   "IIR_Tuple",
2690   &fire_chunk_info,
2691   IR_ROOT,
2692   IR_ASSOCIATION_ELEMENT_BY_EXPRESSION,
2693   0,
2694   0, 0, IIR_Tuple_slot_info,
2695   sizeof(IIR_Tuple)
2696 };
2697 
2698 static tree_slot_info IIR_ConfigurationSpecification_slot_info[] = {
2699   { IR_IDENTIFIER, "label", (tree_base_node*tree_base_node::*)&IIR_ConfigurationSpecification::label },
2700   { IR_COMPONENT_DECLARATION, "component", (tree_base_node*tree_base_node::*)&IIR_ConfigurationSpecification::component },
2701   { IR_BINDING_INDICATION, "binding", (tree_base_node*tree_base_node::*)&IIR_ConfigurationSpecification::binding },
2702 };
2703 
2704 tree_kind_info IR_CONFIGURATION_SPECIFICATION_kind_info = {
2705   173,
2706   "IIR_ConfigurationSpecification",
2707   &fire_chunk_info,
2708   IR_TUPLE,
2709   IR_CONFIGURATION_SPECIFICATION,
2710   0,
2711   3, 3, IIR_ConfigurationSpecification_slot_info,
2712   sizeof(IIR_ConfigurationSpecification)
2713 };
2714 
2715 static tree_slot_info IIR_BindingIndication_slot_info[] = {
2716   { IR_DECLARATIVE_REGION, "unit", (tree_base_node*tree_base_node::*)&IIR_BindingIndication::unit },
2717   { IR_ASSOCIATION_LIST, "generic_map_list", (tree_base_node*tree_base_node::*)&IIR_BindingIndication::generic_map_list },
2718   { IR_ASSOCIATION_LIST, "port_map_list", (tree_base_node*tree_base_node::*)&IIR_BindingIndication::port_map_list },
2719 };
2720 
2721 tree_kind_info IR_BINDING_INDICATION_kind_info = {
2722   174,
2723   "IIR_BindingIndication",
2724   &fire_chunk_info,
2725   IR_TUPLE,
2726   IR_BINDING_INDICATION,
2727   0,
2728   3, 3, IIR_BindingIndication_slot_info,
2729   sizeof(IIR_BindingIndication)
2730 };
2731 
2732 static tree_slot_info IIR_AttributeValue_slot_info[] = {
2733   { IR_EXPRESSION, "value", (tree_base_node*tree_base_node::*)&IIR_AttributeValue::value },
2734   { IR_ATTRIBUTE_DECLARATION, "attribute", (tree_base_node*tree_base_node::*)&IIR_AttributeValue::attribute },
2735 };
2736 
2737 tree_kind_info IR_ATTRIBUTE_VALUE_kind_info = {
2738   175,
2739   "IIR_AttributeValue",
2740   &fire_chunk_info,
2741   IR_TUPLE,
2742   IR_ATTRIBUTE_VALUE,
2743   0,
2744   2, 2, IIR_AttributeValue_slot_info,
2745   sizeof(IIR_AttributeValue)
2746 };
2747 
2748 static tree_slot_info IIR_IndexedAssociation_slot_info[] = {
2749   { IR_EXPRESSION, "value", (tree_base_node*tree_base_node::*)&IIR_IndexedAssociation::value },
2750 };
2751 
2752 tree_kind_info IR_INDEXED_ASSOCIATION_kind_info = {
2753   176,
2754   "IIR_IndexedAssociation",
2755   &fire_chunk_info,
2756   IR_TUPLE,
2757   IR_SINGLE_INDEXED_ASSOCIATION,
2758   0,
2759   1, 1, IIR_IndexedAssociation_slot_info,
2760   sizeof(IIR_IndexedAssociation)
2761 };
2762 
2763 static tree_slot_info IIR_OthersIndexedAssociation_slot_info[] = {
2764 };
2765 
2766 tree_kind_info IR_OTHERS_INDEXED_ASSOCIATION_kind_info = {
2767   177,
2768   "IIR_OthersIndexedAssociation",
2769   &fire_chunk_info,
2770   IR_INDEXED_ASSOCIATION,
2771   IR_OTHERS_INDEXED_ASSOCIATION,
2772   0,
2773   0, 0, IIR_OthersIndexedAssociation_slot_info,
2774   sizeof(IIR_OthersIndexedAssociation)
2775 };
2776 
2777 static tree_slot_info IIR_RangeIndexedAssociation_slot_info[] = {
2778   { IR_RANGE, "index_range", (tree_base_node*tree_base_node::*)&IIR_RangeIndexedAssociation::index_range },
2779 };
2780 
2781 tree_kind_info IR_RANGE_INDEXED_ASSOCIATION_kind_info = {
2782   178,
2783   "IIR_RangeIndexedAssociation",
2784   &fire_chunk_info,
2785   IR_INDEXED_ASSOCIATION,
2786   IR_SLICE_INDEXED_ASSOCIATION,
2787   0,
2788   1, 1, IIR_RangeIndexedAssociation_slot_info,
2789   sizeof(IIR_RangeIndexedAssociation)
2790 };
2791 
2792 static tree_slot_info IIR_SliceIndexedAssociation_slot_info[] = {
2793 };
2794 
2795 tree_kind_info IR_SLICE_INDEXED_ASSOCIATION_kind_info = {
2796   179,
2797   "IIR_SliceIndexedAssociation",
2798   &fire_chunk_info,
2799   IR_RANGE_INDEXED_ASSOCIATION,
2800   IR_SLICE_INDEXED_ASSOCIATION,
2801   0,
2802   0, 0, IIR_SliceIndexedAssociation_slot_info,
2803   sizeof(IIR_SliceIndexedAssociation)
2804 };
2805 
2806 static tree_slot_info IIR_SingleIndexedAssociation_slot_info[] = {
2807   { IR_EXPRESSION, "index", (tree_base_node*tree_base_node::*)&IIR_SingleIndexedAssociation::index },
2808 };
2809 
2810 tree_kind_info IR_SINGLE_INDEXED_ASSOCIATION_kind_info = {
2811   180,
2812   "IIR_SingleIndexedAssociation",
2813   &fire_chunk_info,
2814   IR_INDEXED_ASSOCIATION,
2815   IR_SINGLE_INDEXED_ASSOCIATION,
2816   0,
2817   1, 1, IIR_SingleIndexedAssociation_slot_info,
2818   sizeof(IIR_SingleIndexedAssociation)
2819 };
2820 
2821 static tree_slot_info IIR_ElementAssociation_slot_info[] = {
2822   { IR_ELEMENT_DECLARATION, "element", (tree_base_node*tree_base_node::*)&IIR_ElementAssociation::element },
2823   { IR_EXPRESSION, "value", (tree_base_node*tree_base_node::*)&IIR_ElementAssociation::value },
2824 };
2825 
2826 tree_kind_info IR_ELEMENT_ASSOCIATION_kind_info = {
2827   181,
2828   "IIR_ElementAssociation",
2829   &fire_chunk_info,
2830   IR_TUPLE,
2831   IR_ELEMENT_ASSOCIATION,
2832   0,
2833   2, 2, IIR_ElementAssociation_slot_info,
2834   sizeof(IIR_ElementAssociation)
2835 };
2836 
2837 static tree_slot_info IIR_WaveformElement_slot_info[] = {
2838   { IR_EXPRESSION, "value", (tree_base_node*tree_base_node::*)&IIR_WaveformElement::value },
2839   { IR_EXPRESSION, "time", (tree_base_node*tree_base_node::*)&IIR_WaveformElement::time },
2840 };
2841 
2842 tree_kind_info IR_WAVEFORM_ELEMENT_kind_info = {
2843   182,
2844   "IIR_WaveformElement",
2845   &fire_chunk_info,
2846   IR_TUPLE,
2847   IR_WAVEFORM_ELEMENT,
2848   0,
2849   2, 2, IIR_WaveformElement_slot_info,
2850   sizeof(IIR_WaveformElement)
2851 };
2852 
2853 static tree_slot_info IIR_EntityClassEntry_slot_info[] = {
2854   { (tree_kind_info*)&IR_Kind_ctype_info, "entity_kind", (tree_base_node*tree_base_node::*)&IIR_EntityClassEntry::entity_kind },
2855   { (tree_kind_info*)&bool_ctype_info, "is_boxed", (tree_base_node*tree_base_node::*)&IIR_EntityClassEntry::is_boxed },
2856 };
2857 
2858 tree_kind_info IR_ENTITY_CLASS_ENTRY_kind_info = {
2859   183,
2860   "IIR_EntityClassEntry",
2861   &fire_chunk_info,
2862   IR_TUPLE,
2863   IR_ENTITY_CLASS_ENTRY,
2864   0,
2865   0, 2, IIR_EntityClassEntry_slot_info,
2866   sizeof(IIR_EntityClassEntry)
2867 };
2868 
2869 static tree_slot_info IIR_Choice_slot_info[] = {
2870 };
2871 
2872 tree_kind_info IR_CHOICE_kind_info = {
2873   184,
2874   "IIR_Choice",
2875   &fire_chunk_info,
2876   IR_TUPLE,
2877   IR_CHOICE_BY_EXPRESSION,
2878   0,
2879   0, 0, IIR_Choice_slot_info,
2880   sizeof(IIR_Choice)
2881 };
2882 
2883 static tree_slot_info IIR_ChoiceByOthers_slot_info[] = {
2884 };
2885 
2886 tree_kind_info IR_CHOICE_BY_OTHERS_kind_info = {
2887   185,
2888   "IIR_ChoiceByOthers",
2889   &fire_chunk_info,
2890   IR_CHOICE,
2891   IR_CHOICE_BY_OTHERS,
2892   0,
2893   0, 0, IIR_ChoiceByOthers_slot_info,
2894   sizeof(IIR_ChoiceByOthers)
2895 };
2896 
2897 static tree_slot_info IIR_ChoiceByRange_slot_info[] = {
2898   { IR_RANGE, "range", (tree_base_node*tree_base_node::*)&IIR_ChoiceByRange::range },
2899 };
2900 
2901 tree_kind_info IR_CHOICE_BY_RANGE_kind_info = {
2902   186,
2903   "IIR_ChoiceByRange",
2904   &fire_chunk_info,
2905   IR_CHOICE,
2906   IR_CHOICE_BY_RANGE,
2907   0,
2908   1, 1, IIR_ChoiceByRange_slot_info,
2909   sizeof(IIR_ChoiceByRange)
2910 };
2911 
2912 static tree_slot_info IIR_ChoiceByExpression_slot_info[] = {
2913   { IR_EXPRESSION, "value", (tree_base_node*tree_base_node::*)&IIR_ChoiceByExpression::value },
2914 };
2915 
2916 tree_kind_info IR_CHOICE_BY_EXPRESSION_kind_info = {
2917   187,
2918   "IIR_ChoiceByExpression",
2919   &fire_chunk_info,
2920   IR_CHOICE,
2921   IR_CHOICE_BY_EXPRESSION,
2922   0,
2923   1, 1, IIR_ChoiceByExpression_slot_info,
2924   sizeof(IIR_ChoiceByExpression)
2925 };
2926 
2927 static tree_slot_info IIR_CaseStatementAlternative_slot_info[] = {
2928   { IR_SEQUENTIAL_STATEMENT_LIST, "sequence_of_statements", (tree_base_node*tree_base_node::*)&IIR_CaseStatementAlternative::sequence_of_statements },
2929   { IR_CHOICE_LIST, "choices", (tree_base_node*tree_base_node::*)&IIR_CaseStatementAlternative::choices },
2930 };
2931 
2932 tree_kind_info IR_CASE_STATEMENT_ALTERNATIVE_kind_info = {
2933   188,
2934   "IIR_CaseStatementAlternative",
2935   &fire_chunk_info,
2936   IR_TUPLE,
2937   IR_CASE_STATEMENT_ALTERNATIVE,
2938   0,
2939   2, 2, IIR_CaseStatementAlternative_slot_info,
2940   sizeof(IIR_CaseStatementAlternative)
2941 };
2942 
2943 static tree_slot_info IIR_AssociationElement_slot_info[] = {
2944   { IR_OBJECT_REFERENCE, "formal", (tree_base_node*tree_base_node::*)&IIR_AssociationElement::formal },
2945   { IR_INTERFACE_DECLARATION, "formal_declaration", (tree_base_node*tree_base_node::*)&IIR_AssociationElement::formal_declaration },
2946   { IR_DECLARATION, "formal_conversion", (tree_base_node*tree_base_node::*)&IIR_AssociationElement::formal_conversion },
2947   { IR_EXPRESSION, "actual", (tree_base_node*tree_base_node::*)&IIR_AssociationElement::actual },
2948   { IR_DECLARATION, "actual_conversion", (tree_base_node*tree_base_node::*)&IIR_AssociationElement::actual_conversion },
2949 };
2950 
2951 tree_kind_info IR_ASSOCIATION_ELEMENT_kind_info = {
2952   189,
2953   "IIR_AssociationElement",
2954   &fire_chunk_info,
2955   IR_TUPLE,
2956   IR_ASSOCIATION_ELEMENT_BY_EXPRESSION,
2957   0,
2958   5, 5, IIR_AssociationElement_slot_info,
2959   sizeof(IIR_AssociationElement)
2960 };
2961 
2962 static tree_slot_info IIR_AssociationElementOpen_slot_info[] = {
2963 };
2964 
2965 tree_kind_info IR_ASSOCIATION_ELEMENT_OPEN_kind_info = {
2966   190,
2967   "IIR_AssociationElementOpen",
2968   &fire_chunk_info,
2969   IR_ASSOCIATION_ELEMENT,
2970   IR_ASSOCIATION_ELEMENT_OPEN,
2971   0,
2972   0, 0, IIR_AssociationElementOpen_slot_info,
2973   sizeof(IIR_AssociationElementOpen)
2974 };
2975 
2976 static tree_slot_info IIR_AssociationElementByExpression_slot_info[] = {
2977 };
2978 
2979 tree_kind_info IR_ASSOCIATION_ELEMENT_BY_EXPRESSION_kind_info = {
2980   191,
2981   "IIR_AssociationElementByExpression",
2982   &fire_chunk_info,
2983   IR_ASSOCIATION_ELEMENT,
2984   IR_ASSOCIATION_ELEMENT_BY_EXPRESSION,
2985   0,
2986   0, 0, IIR_AssociationElementByExpression_slot_info,
2987   sizeof(IIR_AssociationElementByExpression)
2988 };
2989 
2990 static tree_slot_info IIR_Literal_slot_info[] = {
2991 };
2992 
2993 tree_kind_info IR_LITERAL_kind_info = {
2994   192,
2995   "IIR_Literal",
2996   &fire_chunk_info,
2997   IR_ROOT,
2998   IR_IDENTIFIER,
2999   0,
3000   0, 0, IIR_Literal_slot_info,
3001   sizeof(IIR_Literal)
3002 };
3003 
3004 static tree_slot_info IIR_AbstractLiteral_slot_info[] = {
3005 };
3006 
3007 tree_kind_info IR_ABSTRACT_LITERAL_kind_info = {
3008   193,
3009   "IIR_AbstractLiteral",
3010   &fire_chunk_info,
3011   IR_LITERAL,
3012   IR_INTEGER_LITERAL,
3013   0,
3014   0, 0, IIR_AbstractLiteral_slot_info,
3015   sizeof(IIR_AbstractLiteral)
3016 };
3017 
3018 static tree_slot_info IIR_FloatingPointLiteral_slot_info[] = {
3019   { (tree_kind_info*)&IR_String_ctype_info, "text", (tree_base_node*tree_base_node::*)&IIR_FloatingPointLiteral::text },
3020 };
3021 
3022 tree_kind_info IR_FLOATING_POINT_LITERAL_kind_info = {
3023   194,
3024   "IIR_FloatingPointLiteral",
3025   &fire_chunk_info,
3026   IR_ABSTRACT_LITERAL,
3027   IR_FLOATING_POINT_LITERAL,
3028   0,
3029   0, 1, IIR_FloatingPointLiteral_slot_info,
3030   sizeof(IIR_FloatingPointLiteral)
3031 };
3032 
3033 static tree_slot_info IIR_IntegerLiteral_slot_info[] = {
3034   { (tree_kind_info*)&IR_String_ctype_info, "text", (tree_base_node*tree_base_node::*)&IIR_IntegerLiteral::text },
3035 };
3036 
3037 tree_kind_info IR_INTEGER_LITERAL_kind_info = {
3038   195,
3039   "IIR_IntegerLiteral",
3040   &fire_chunk_info,
3041   IR_ABSTRACT_LITERAL,
3042   IR_INTEGER_LITERAL,
3043   0,
3044   0, 1, IIR_IntegerLiteral_slot_info,
3045   sizeof(IIR_IntegerLiteral)
3046 };
3047 
3048 static tree_slot_info IIR_TextLiteral_slot_info[] = {
3049   { (tree_kind_info*)&IR_String_ctype_info, "text", (tree_base_node*tree_base_node::*)&IIR_TextLiteral::text },
3050 };
3051 
3052 tree_kind_info IR_TEXT_LITERAL_kind_info = {
3053   196,
3054   "IIR_TextLiteral",
3055   &fire_chunk_info,
3056   IR_LITERAL,
3057   IR_IDENTIFIER,
3058   0,
3059   0, 1, IIR_TextLiteral_slot_info,
3060   sizeof(IIR_TextLiteral)
3061 };
3062 
3063 static tree_slot_info IIR_StringLiteral_slot_info[] = {
3064 };
3065 
3066 tree_kind_info IR_STRING_LITERAL_kind_info = {
3067   197,
3068   "IIR_StringLiteral",
3069   &fire_chunk_info,
3070   IR_TEXT_LITERAL,
3071   IR_STRING_LITERAL,
3072   0,
3073   0, 0, IIR_StringLiteral_slot_info,
3074   sizeof(IIR_StringLiteral)
3075 };
3076 
3077 static tree_slot_info IIR_CharacterLiteral_slot_info[] = {
3078 };
3079 
3080 tree_kind_info IR_CHARACTER_LITERAL_kind_info = {
3081   198,
3082   "IIR_CharacterLiteral",
3083   &fire_chunk_info,
3084   IR_TEXT_LITERAL,
3085   IR_CHARACTER_LITERAL,
3086   0,
3087   0, 0, IIR_CharacterLiteral_slot_info,
3088   sizeof(IIR_CharacterLiteral)
3089 };
3090 
3091 static tree_slot_info IIR_Identifier_slot_info[] = {
3092 };
3093 
3094 tree_kind_info IR_IDENTIFIER_kind_info = {
3095   199,
3096   "IIR_Identifier",
3097   &fire_chunk_info,
3098   IR_TEXT_LITERAL,
3099   IR_IDENTIFIER,
3100   0,
3101   0, 0, IIR_Identifier_slot_info,
3102   sizeof(IIR_Identifier)
3103 };
3104 
3105 static tree_slot_info IIR_Dummy_slot_info[] = {
3106 };
3107 
3108 tree_kind_info IR_DUMMY_kind_info = {
3109   200,
3110   "IIR_Dummy",
3111   &fire_chunk_info,
3112   IR_ROOT,
3113   IR_SIGNATURE,
3114   0,
3115   0, 0, IIR_Dummy_slot_info,
3116   sizeof(IIR_Dummy)
3117 };
3118 
3119 static tree_slot_info IIR_Signature_slot_info[] = {
3120 };
3121 
3122 tree_kind_info IR_SIGNATURE_kind_info = {
3123   201,
3124   "IIR_Signature",
3125   &fire_chunk_info,
3126   IR_DUMMY,
3127   IR_SIGNATURE,
3128   0,
3129   0, 0, IIR_Signature_slot_info,
3130   sizeof(IIR_Signature)
3131 };
3132 
3133 static tree_slot_info IIR_PosInfo_slot_info[] = {
3134 };
3135 
3136 tree_kind_info IR_POS_INFO_kind_info = {
3137   202,
3138   "IIR_PosInfo",
3139   &fire_chunk_info,
3140   0,
3141   IR_POS_INFO_TEXT_FILE,
3142   0,
3143   0, 0, IIR_PosInfo_slot_info,
3144   sizeof(IIR_PosInfo)
3145 };
3146 
3147 static tree_slot_info IIR_PosInfo_Sheet_slot_info[] = {
3148   { (tree_kind_info*)&fire_string_ctype_info, "sheet_name", (tree_base_node*tree_base_node::*)&IIR_PosInfo_Sheet::sheet_name },
3149   { (tree_kind_info*)&int_ctype_info, "x_coordinate", (tree_base_node*tree_base_node::*)&IIR_PosInfo_Sheet::x_coordinate },
3150   { (tree_kind_info*)&int_ctype_info, "y_coordinate", (tree_base_node*tree_base_node::*)&IIR_PosInfo_Sheet::y_coordinate },
3151 };
3152 
3153 tree_kind_info IR_POS_INFO_SHEET_kind_info = {
3154   203,
3155   "IIR_PosInfo_Sheet",
3156   &fire_chunk_info,
3157   IR_POS_INFO,
3158   IR_POS_INFO_SHEET,
3159   0,
3160   0, 3, IIR_PosInfo_Sheet_slot_info,
3161   sizeof(IIR_PosInfo_Sheet)
3162 };
3163 
3164 static tree_slot_info IIR_PosInfo_TextFile_slot_info[] = {
3165   { (tree_kind_info*)&fire_string_ctype_info, "file_name", (tree_base_node*tree_base_node::*)&IIR_PosInfo_TextFile::file_name },
3166   { (tree_kind_info*)&int_ctype_info, "line_number", (tree_base_node*tree_base_node::*)&IIR_PosInfo_TextFile::line_number },
3167 };
3168 
3169 tree_kind_info IR_POS_INFO_TEXT_FILE_kind_info = {
3170   204,
3171   "IIR_PosInfo_TextFile",
3172   &fire_chunk_info,
3173   IR_POS_INFO,
3174   IR_POS_INFO_TEXT_FILE,
3175   0,
3176   0, 2, IIR_PosInfo_TextFile_slot_info,
3177   sizeof(IIR_PosInfo_TextFile)
3178 };
3179 
kind()3180 tree_kind IIR_PosInfo::kind () { return IR_POS_INFO; }
3181 
kind()3182 tree_kind IIR_PosInfo_TextFile::kind () { return IR_POS_INFO_TEXT_FILE; }
3183 
kind()3184 tree_kind IIR_PosInfo_Sheet::kind () { return IR_POS_INFO_SHEET; }
3185 
kind()3186 tree_kind IIR_Root::kind () { return IR_ROOT; }
3187 
kind()3188 tree_kind IIR_Dummy::kind () { return IR_DUMMY; }
3189 
kind()3190 tree_kind IIR_Signature::kind () { return IR_SIGNATURE; }
3191 
kind()3192 tree_kind IIR_Literal::kind () { return IR_LITERAL; }
3193 
kind()3194 tree_kind IIR_TextLiteral::kind () { return IR_TEXT_LITERAL; }
3195 
kind()3196 tree_kind IIR_Identifier::kind () { return IR_IDENTIFIER; }
3197 
kind()3198 tree_kind IIR_CharacterLiteral::kind () { return IR_CHARACTER_LITERAL; }
3199 
kind()3200 tree_kind IIR_StringLiteral::kind () { return IR_STRING_LITERAL; }
3201 
kind()3202 tree_kind IIR_AbstractLiteral::kind () { return IR_ABSTRACT_LITERAL; }
3203 
kind()3204 tree_kind IIR_IntegerLiteral::kind () { return IR_INTEGER_LITERAL; }
3205 
kind()3206 tree_kind IIR_FloatingPointLiteral::kind () { return IR_FLOATING_POINT_LITERAL; }
3207 
kind()3208 tree_kind IIR_Tuple::kind () { return IR_TUPLE; }
3209 
kind()3210 tree_kind IIR_AssociationElement::kind () { return IR_ASSOCIATION_ELEMENT; }
3211 
kind()3212 tree_kind IIR_AssociationElementByExpression::kind () { return IR_ASSOCIATION_ELEMENT_BY_EXPRESSION; }
3213 
kind()3214 tree_kind IIR_AssociationElementOpen::kind () { return IR_ASSOCIATION_ELEMENT_OPEN; }
3215 
kind()3216 tree_kind IIR_CaseStatementAlternative::kind () { return IR_CASE_STATEMENT_ALTERNATIVE; }
3217 
kind()3218 tree_kind IIR_Choice::kind () { return IR_CHOICE; }
3219 
kind()3220 tree_kind IIR_ChoiceByExpression::kind () { return IR_CHOICE_BY_EXPRESSION; }
3221 
kind()3222 tree_kind IIR_ChoiceByRange::kind () { return IR_CHOICE_BY_RANGE; }
3223 
kind()3224 tree_kind IIR_ChoiceByOthers::kind () { return IR_CHOICE_BY_OTHERS; }
3225 
kind()3226 tree_kind IIR_EntityClassEntry::kind () { return IR_ENTITY_CLASS_ENTRY; }
3227 
kind()3228 tree_kind IIR_WaveformElement::kind () { return IR_WAVEFORM_ELEMENT; }
3229 
kind()3230 tree_kind IIR_ElementAssociation::kind () { return IR_ELEMENT_ASSOCIATION; }
3231 
kind()3232 tree_kind IIR_IndexedAssociation::kind () { return IR_INDEXED_ASSOCIATION; }
3233 
kind()3234 tree_kind IIR_SingleIndexedAssociation::kind () { return IR_SINGLE_INDEXED_ASSOCIATION; }
3235 
kind()3236 tree_kind IIR_RangeIndexedAssociation::kind () { return IR_RANGE_INDEXED_ASSOCIATION; }
3237 
kind()3238 tree_kind IIR_SliceIndexedAssociation::kind () { return IR_SLICE_INDEXED_ASSOCIATION; }
3239 
kind()3240 tree_kind IIR_OthersIndexedAssociation::kind () { return IR_OTHERS_INDEXED_ASSOCIATION; }
3241 
kind()3242 tree_kind IIR_AttributeValue::kind () { return IR_ATTRIBUTE_VALUE; }
3243 
kind()3244 tree_kind IIR_List::kind () { return IR_LIST; }
3245 
kind()3246 tree_kind IIR_AssociationList::kind () { return IR_ASSOCIATION_LIST; }
3247 
reverse(pIIR_AssociationList n)3248 pIIR_AssociationList reverse (pIIR_AssociationList n)
3249 {
3250   pIIR_AssociationList r = NULL;
3251   while (n)
3252     {
3253       pIIR_AssociationList n2 = n->rest;
3254       n->rest = r;
3255       r = n;
3256       n = n2;
3257     }
3258   return r;
3259 }
3260 
kind()3261 tree_kind IIR_AttributeValueList::kind () { return IR_ATTRIBUTE_VALUE_LIST; }
3262 
reverse(pIIR_AttributeValueList n)3263 pIIR_AttributeValueList reverse (pIIR_AttributeValueList n)
3264 {
3265   pIIR_AttributeValueList r = NULL;
3266   while (n)
3267     {
3268       pIIR_AttributeValueList n2 = n->rest;
3269       n->rest = r;
3270       r = n;
3271       n = n2;
3272     }
3273   return r;
3274 }
3275 
kind()3276 tree_kind IIR_CaseStatementAlternativeList::kind () { return IR_CASE_STATEMENT_ALTERNATIVE_LIST; }
3277 
reverse(pIIR_CaseStatementAlternativeList n)3278 pIIR_CaseStatementAlternativeList reverse (pIIR_CaseStatementAlternativeList n)
3279 {
3280   pIIR_CaseStatementAlternativeList r = NULL;
3281   while (n)
3282     {
3283       pIIR_CaseStatementAlternativeList n2 = n->rest;
3284       n->rest = r;
3285       r = n;
3286       n = n2;
3287     }
3288   return r;
3289 }
3290 
kind()3291 tree_kind IIR_ChoiceList::kind () { return IR_CHOICE_LIST; }
3292 
reverse(pIIR_ChoiceList n)3293 pIIR_ChoiceList reverse (pIIR_ChoiceList n)
3294 {
3295   pIIR_ChoiceList r = NULL;
3296   while (n)
3297     {
3298       pIIR_ChoiceList n2 = n->rest;
3299       n->rest = r;
3300       r = n;
3301       n = n2;
3302     }
3303   return r;
3304 }
3305 
kind()3306 tree_kind IIR_ConcurrentStatementList::kind () { return IR_CONCURRENT_STATEMENT_LIST; }
3307 
reverse(pIIR_ConcurrentStatementList n)3308 pIIR_ConcurrentStatementList reverse (pIIR_ConcurrentStatementList n)
3309 {
3310   pIIR_ConcurrentStatementList r = NULL;
3311   while (n)
3312     {
3313       pIIR_ConcurrentStatementList n2 = n->rest;
3314       n->rest = r;
3315       r = n;
3316       n = n2;
3317     }
3318   return r;
3319 }
3320 
kind()3321 tree_kind IIR_ConfigurationItemList::kind () { return IR_CONFIGURATION_ITEM_LIST; }
3322 
reverse(pIIR_ConfigurationItemList n)3323 pIIR_ConfigurationItemList reverse (pIIR_ConfigurationItemList n)
3324 {
3325   pIIR_ConfigurationItemList r = NULL;
3326   while (n)
3327     {
3328       pIIR_ConfigurationItemList n2 = n->rest;
3329       n->rest = r;
3330       r = n;
3331       n = n2;
3332     }
3333   return r;
3334 }
3335 
kind()3336 tree_kind IIR_DeclarationList::kind () { return IR_DECLARATION_LIST; }
3337 
reverse(pIIR_DeclarationList n)3338 pIIR_DeclarationList reverse (pIIR_DeclarationList n)
3339 {
3340   pIIR_DeclarationList r = NULL;
3341   while (n)
3342     {
3343       pIIR_DeclarationList n2 = n->rest;
3344       n->rest = r;
3345       r = n;
3346       n = n2;
3347     }
3348   return r;
3349 }
3350 
kind()3351 tree_kind IIR_ElementDeclarationList::kind () { return IR_ELEMENT_DECLARATION_LIST; }
3352 
reverse(pIIR_ElementDeclarationList n)3353 pIIR_ElementDeclarationList reverse (pIIR_ElementDeclarationList n)
3354 {
3355   pIIR_ElementDeclarationList r = NULL;
3356   while (n)
3357     {
3358       pIIR_ElementDeclarationList n2 = n->rest;
3359       n->rest = r;
3360       r = n;
3361       n = n2;
3362     }
3363   return r;
3364 }
3365 
kind()3366 tree_kind IIR_EntityClassEntryList::kind () { return IR_ENTITY_CLASS_ENTRY_LIST; }
3367 
reverse(pIIR_EntityClassEntryList n)3368 pIIR_EntityClassEntryList reverse (pIIR_EntityClassEntryList n)
3369 {
3370   pIIR_EntityClassEntryList r = NULL;
3371   while (n)
3372     {
3373       pIIR_EntityClassEntryList n2 = n->rest;
3374       n->rest = r;
3375       r = n;
3376       n = n2;
3377     }
3378   return r;
3379 }
3380 
kind()3381 tree_kind IIR_EnumerationLiteralList::kind () { return IR_ENUMERATION_LITERAL_LIST; }
3382 
reverse(pIIR_EnumerationLiteralList n)3383 pIIR_EnumerationLiteralList reverse (pIIR_EnumerationLiteralList n)
3384 {
3385   pIIR_EnumerationLiteralList r = NULL;
3386   while (n)
3387     {
3388       pIIR_EnumerationLiteralList n2 = n->rest;
3389       n->rest = r;
3390       r = n;
3391       n = n2;
3392     }
3393   return r;
3394 }
3395 
kind()3396 tree_kind IIR_InterfaceList::kind () { return IR_INTERFACE_LIST; }
3397 
reverse(pIIR_InterfaceList n)3398 pIIR_InterfaceList reverse (pIIR_InterfaceList n)
3399 {
3400   pIIR_InterfaceList r = NULL;
3401   while (n)
3402     {
3403       pIIR_InterfaceList n2 = n->rest;
3404       n->rest = r;
3405       r = n;
3406       n = n2;
3407     }
3408   return r;
3409 }
3410 
kind()3411 tree_kind IIR_LibraryUnitList::kind () { return IR_LIBRARY_UNIT_LIST; }
3412 
reverse(pIIR_LibraryUnitList n)3413 pIIR_LibraryUnitList reverse (pIIR_LibraryUnitList n)
3414 {
3415   pIIR_LibraryUnitList r = NULL;
3416   while (n)
3417     {
3418       pIIR_LibraryUnitList n2 = n->rest;
3419       n->rest = r;
3420       r = n;
3421       n = n2;
3422     }
3423   return r;
3424 }
3425 
kind()3426 tree_kind IIR_SequentialStatementList::kind () { return IR_SEQUENTIAL_STATEMENT_LIST; }
3427 
reverse(pIIR_SequentialStatementList n)3428 pIIR_SequentialStatementList reverse (pIIR_SequentialStatementList n)
3429 {
3430   pIIR_SequentialStatementList r = NULL;
3431   while (n)
3432     {
3433       pIIR_SequentialStatementList n2 = n->rest;
3434       n->rest = r;
3435       r = n;
3436       n = n2;
3437     }
3438   return r;
3439 }
3440 
kind()3441 tree_kind IIR_UnitList::kind () { return IR_UNIT_LIST; }
3442 
reverse(pIIR_UnitList n)3443 pIIR_UnitList reverse (pIIR_UnitList n)
3444 {
3445   pIIR_UnitList r = NULL;
3446   while (n)
3447     {
3448       pIIR_UnitList n2 = n->rest;
3449       n->rest = r;
3450       r = n;
3451       n = n2;
3452     }
3453   return r;
3454 }
3455 
kind()3456 tree_kind IIR_WaveformList::kind () { return IR_WAVEFORM_LIST; }
3457 
reverse(pIIR_WaveformList n)3458 pIIR_WaveformList reverse (pIIR_WaveformList n)
3459 {
3460   pIIR_WaveformList r = NULL;
3461   while (n)
3462     {
3463       pIIR_WaveformList n2 = n->rest;
3464       n->rest = r;
3465       r = n;
3466       n = n2;
3467     }
3468   return r;
3469 }
3470 
kind()3471 tree_kind IIR_TypeList::kind () { return IR_TYPE_LIST; }
3472 
reverse(pIIR_TypeList n)3473 pIIR_TypeList reverse (pIIR_TypeList n)
3474 {
3475   pIIR_TypeList r = NULL;
3476   while (n)
3477     {
3478       pIIR_TypeList n2 = n->rest;
3479       n->rest = r;
3480       r = n;
3481       n = n2;
3482     }
3483   return r;
3484 }
3485 
kind()3486 tree_kind IIR_ExpressionList::kind () { return IR_EXPRESSION_LIST; }
3487 
reverse(pIIR_ExpressionList n)3488 pIIR_ExpressionList reverse (pIIR_ExpressionList n)
3489 {
3490   pIIR_ExpressionList r = NULL;
3491   while (n)
3492     {
3493       pIIR_ExpressionList n2 = n->rest;
3494       n->rest = r;
3495       r = n;
3496       n = n2;
3497     }
3498   return r;
3499 }
3500 
kind()3501 tree_kind IIR_IndexedAssociationList::kind () { return IR_INDEXED_ASSOCIATION_LIST; }
3502 
reverse(pIIR_IndexedAssociationList n)3503 pIIR_IndexedAssociationList reverse (pIIR_IndexedAssociationList n)
3504 {
3505   pIIR_IndexedAssociationList r = NULL;
3506   while (n)
3507     {
3508       pIIR_IndexedAssociationList n2 = n->rest;
3509       n->rest = r;
3510       r = n;
3511       n = n2;
3512     }
3513   return r;
3514 }
3515 
kind()3516 tree_kind IIR_ElementAssociationList::kind () { return IR_ELEMENT_ASSOCIATION_LIST; }
3517 
reverse(pIIR_ElementAssociationList n)3518 pIIR_ElementAssociationList reverse (pIIR_ElementAssociationList n)
3519 {
3520   pIIR_ElementAssociationList r = NULL;
3521   while (n)
3522     {
3523       pIIR_ElementAssociationList n2 = n->rest;
3524       n->rest = r;
3525       r = n;
3526       n = n2;
3527     }
3528   return r;
3529 }
3530 
kind()3531 tree_kind IIR_ComponentInstantiationList::kind () { return IR_COMPONENT_INSTANTIATION_LIST; }
3532 
reverse(pIIR_ComponentInstantiationList n)3533 pIIR_ComponentInstantiationList reverse (pIIR_ComponentInstantiationList n)
3534 {
3535   pIIR_ComponentInstantiationList r = NULL;
3536   while (n)
3537     {
3538       pIIR_ComponentInstantiationList n2 = n->rest;
3539       n->rest = r;
3540       r = n;
3541       n = n2;
3542     }
3543   return r;
3544 }
3545 
kind()3546 tree_kind IIR_ConfigurationSpecificationList::kind () { return IR_CONFIGURATION_SPECIFICATION_LIST; }
3547 
reverse(pIIR_ConfigurationSpecificationList n)3548 pIIR_ConfigurationSpecificationList reverse (pIIR_ConfigurationSpecificationList n)
3549 {
3550   pIIR_ConfigurationSpecificationList r = NULL;
3551   while (n)
3552     {
3553       pIIR_ConfigurationSpecificationList n2 = n->rest;
3554       n->rest = r;
3555       r = n;
3556       n = n2;
3557     }
3558   return r;
3559 }
3560 
kind()3561 tree_kind IIR_IdentifierList::kind () { return IR_IDENTIFIER_LIST; }
3562 
reverse(pIIR_IdentifierList n)3563 pIIR_IdentifierList reverse (pIIR_IdentifierList n)
3564 {
3565   pIIR_IdentifierList r = NULL;
3566   while (n)
3567     {
3568       pIIR_IdentifierList n2 = n->rest;
3569       n->rest = r;
3570       r = n;
3571       n = n2;
3572     }
3573   return r;
3574 }
3575 
kind()3576 tree_kind IIR_Range::kind () { return IR_RANGE; }
3577 
kind()3578 tree_kind IIR_ExplicitRange::kind () { return IR_EXPLICIT_RANGE; }
3579 
kind()3580 tree_kind IIR_ArrayRange::kind () { return IR_ARRAY_RANGE; }
3581 
kind()3582 tree_kind IIR_Attr_ArrayRANGE::kind () { return IR_ATTR_ARRAY_RANGE; }
3583 
kind()3584 tree_kind IIR_Attr_ArrayREVERSE_RANGE::kind () { return IR_ATTR_ARRAY_REVERSE_RANGE; }
3585 
kind()3586 tree_kind IIR_Type::kind () { return IR_TYPE; }
3587 
kind()3588 tree_kind IIR_Subtype::kind () { return IR_SUBTYPE; }
3589 
kind()3590 tree_kind IIR_ScalarType::kind () { return IR_SCALAR_TYPE; }
3591 
kind()3592 tree_kind IIR_ScalarSubtype::kind () { return IR_SCALAR_SUBTYPE; }
3593 
kind()3594 tree_kind IIR_EnumerationType::kind () { return IR_ENUMERATION_TYPE; }
3595 
kind()3596 tree_kind IIR_IntegerType::kind () { return IR_INTEGER_TYPE; }
3597 
kind()3598 tree_kind IIR_FloatingType::kind () { return IR_FLOATING_TYPE; }
3599 
kind()3600 tree_kind IIR_PhysicalType::kind () { return IR_PHYSICAL_TYPE; }
3601 
kind()3602 tree_kind IIR_CompositeType::kind () { return IR_COMPOSITE_TYPE; }
3603 
kind()3604 tree_kind IIR_RecordType::kind () { return IR_RECORD_TYPE; }
3605 
kind()3606 tree_kind IIR_RecordSubtype::kind () { return IR_RECORD_SUBTYPE; }
3607 
kind()3608 tree_kind IIR_AccessType::kind () { return IR_ACCESS_TYPE; }
3609 
kind()3610 tree_kind IIR_FileType::kind () { return IR_FILE_TYPE; }
3611 
kind()3612 tree_kind IIR_ArrayType::kind () { return IR_ARRAY_TYPE; }
3613 
kind()3614 tree_kind IIR_ArraySubtype::kind () { return IR_ARRAY_SUBTYPE; }
3615 
kind()3616 tree_kind IIR_Declaration::kind () { return IR_DECLARATION; }
3617 
kind()3618 tree_kind IIR_DeclarativeRegion::kind () { return IR_DECLARATIVE_REGION; }
3619 
kind()3620 tree_kind IIR_LoopDeclarativeRegion::kind () { return IR_LOOP_DECLARATIVE_REGION; }
3621 
kind()3622 tree_kind IIR_SubprogramDeclaration::kind () { return IR_SUBPROGRAM_DECLARATION; }
3623 
kind()3624 tree_kind IIR_ProcedureDeclaration::kind () { return IR_PROCEDURE_DECLARATION; }
3625 
kind()3626 tree_kind IIR_PredefinedProcedureDeclaration::kind () { return IR_PREDEFINED_PROCEDURE_DECLARATION; }
3627 
kind()3628 tree_kind IIR_FunctionDeclaration::kind () { return IR_FUNCTION_DECLARATION; }
3629 
kind()3630 tree_kind IIR_PredefinedFunctionDeclaration::kind () { return IR_PREDEFINED_FUNCTION_DECLARATION; }
3631 
kind()3632 tree_kind IIR_EnumerationLiteral::kind () { return IR_ENUMERATION_LITERAL; }
3633 
kind()3634 tree_kind IIR_ElementDeclaration::kind () { return IR_ELEMENT_DECLARATION; }
3635 
kind()3636 tree_kind IIR_TypeDeclaration::kind () { return IR_TYPE_DECLARATION; }
3637 
kind()3638 tree_kind IIR_SubtypeDeclaration::kind () { return IR_SUBTYPE_DECLARATION; }
3639 
kind()3640 tree_kind IIR_ObjectDeclaration::kind () { return IR_OBJECT_DECLARATION; }
3641 
kind()3642 tree_kind IIR_ConstantDeclaration::kind () { return IR_CONSTANT_DECLARATION; }
3643 
kind()3644 tree_kind IIR_VariableDeclaration::kind () { return IR_VARIABLE_DECLARATION; }
3645 
kind()3646 tree_kind IIR_SharedVariableDeclaration::kind () { return IR_SHARED_VARIABLE_DECLARATION; }
3647 
kind()3648 tree_kind IIR_SignalDeclaration::kind () { return IR_SIGNAL_DECLARATION; }
3649 
kind()3650 tree_kind IIR_FileDeclaration::kind () { return IR_FILE_DECLARATION; }
3651 
kind()3652 tree_kind IIR_InterfaceDeclaration::kind () { return IR_INTERFACE_DECLARATION; }
3653 
kind()3654 tree_kind IIR_ConstantInterfaceDeclaration::kind () { return IR_CONSTANT_INTERFACE_DECLARATION; }
3655 
kind()3656 tree_kind IIR_VariableInterfaceDeclaration::kind () { return IR_VARIABLE_INTERFACE_DECLARATION; }
3657 
kind()3658 tree_kind IIR_SignalInterfaceDeclaration::kind () { return IR_SIGNAL_INTERFACE_DECLARATION; }
3659 
kind()3660 tree_kind IIR_FileInterfaceDeclaration::kind () { return IR_FILE_INTERFACE_DECLARATION; }
3661 
kind()3662 tree_kind IIR_AttributeDeclaration::kind () { return IR_ATTRIBUTE_DECLARATION; }
3663 
kind()3664 tree_kind IIR_ComponentDeclaration::kind () { return IR_COMPONENT_DECLARATION; }
3665 
kind()3666 tree_kind IIR_LibraryDeclaration::kind () { return IR_LIBRARY_DECLARATION; }
3667 
kind()3668 tree_kind IIR_LibraryUnit::kind () { return IR_LIBRARY_UNIT; }
3669 
kind()3670 tree_kind IIR_EntityDeclaration::kind () { return IR_ENTITY_DECLARATION; }
3671 
kind()3672 tree_kind IIR_ArchitectureDeclaration::kind () { return IR_ARCHITECTURE_DECLARATION; }
3673 
kind()3674 tree_kind IIR_ArchitectureRef::kind () { return IR_ARCHITECTURE_REF; }
3675 
kind()3676 tree_kind IIR_PackageDeclaration::kind () { return IR_PACKAGE_DECLARATION; }
3677 
kind()3678 tree_kind IIR_PackageBodyDeclaration::kind () { return IR_PACKAGE_BODY_DECLARATION; }
3679 
kind()3680 tree_kind IIR_ConfigurationDeclaration::kind () { return IR_CONFIGURATION_DECLARATION; }
3681 
kind()3682 tree_kind IIR_ConfigurationItem::kind () { return IR_CONFIGURATION_ITEM; }
3683 
kind()3684 tree_kind IIR_BlockConfiguration::kind () { return IR_BLOCK_CONFIGURATION; }
3685 
kind()3686 tree_kind IIR_ComponentConfiguration::kind () { return IR_COMPONENT_CONFIGURATION; }
3687 
kind()3688 tree_kind IIR_PhysicalUnit::kind () { return IR_PHYSICAL_UNIT; }
3689 
kind()3690 tree_kind IIR_BindingIndication::kind () { return IR_BINDING_INDICATION; }
3691 
kind()3692 tree_kind IIR_ConfigurationSpecification::kind () { return IR_CONFIGURATION_SPECIFICATION; }
3693 
kind()3694 tree_kind IIR_DisconnectSpecification::kind () { return IR_DISCONNECT_SPECIFICATION; }
3695 
kind()3696 tree_kind IIR_Label::kind () { return IR_LABEL; }
3697 
kind()3698 tree_kind IIR_LibraryClause::kind () { return IR_LIBRARY_CLAUSE; }
3699 
kind()3700 tree_kind IIR_UseClause::kind () { return IR_USE_CLAUSE; }
3701 
kind()3702 tree_kind IIR_Expression::kind () { return IR_EXPRESSION; }
3703 
kind()3704 tree_kind IIR_AbstractLiteralExpression::kind () { return IR_ABSTRACT_LITERAL_EXPRESSION; }
3705 
kind()3706 tree_kind IIR_PhysicalLiteral::kind () { return IR_PHYSICAL_LITERAL; }
3707 
kind()3708 tree_kind IIR_ArrayLiteralExpression::kind () { return IR_ARRAY_LITERAL_EXPRESSION; }
3709 
kind()3710 tree_kind IIR_EnumLiteralReference::kind () { return IR_ENUM_LITERAL_REFERENCE; }
3711 
kind()3712 tree_kind IIR_NullExpression::kind () { return IR_NULL_EXPRESSION; }
3713 
kind()3714 tree_kind IIR_Aggregate::kind () { return IR_AGGREGATE; }
3715 
kind()3716 tree_kind IIR_RecordAggregate::kind () { return IR_RECORD_AGGREGATE; }
3717 
kind()3718 tree_kind IIR_ArtificialRecordAggregate::kind () { return IR_ARTIFICIAL_RECORD_AGGREGATE; }
3719 
kind()3720 tree_kind IIR_ArrayAggregate::kind () { return IR_ARRAY_AGGREGATE; }
3721 
kind()3722 tree_kind IIR_ArtificialArrayAggregate::kind () { return IR_ARTIFICIAL_ARRAY_AGGREGATE; }
3723 
kind()3724 tree_kind IIR_FunctionCall::kind () { return IR_FUNCTION_CALL; }
3725 
kind()3726 tree_kind IIR_QualifiedExpression::kind () { return IR_QUALIFIED_EXPRESSION; }
3727 
kind()3728 tree_kind IIR_TypeConversion::kind () { return IR_TYPE_CONVERSION; }
3729 
kind()3730 tree_kind IIR_Allocator::kind () { return IR_ALLOCATOR; }
3731 
kind()3732 tree_kind IIR_OpenExpression::kind () { return IR_OPEN_EXPRESSION; }
3733 
kind()3734 tree_kind IIR_ObjectReference::kind () { return IR_OBJECT_REFERENCE; }
3735 
kind()3736 tree_kind IIR_SimpleReference::kind () { return IR_SIMPLE_REFERENCE; }
3737 
kind()3738 tree_kind IIR_AccessReference::kind () { return IR_ACCESS_REFERENCE; }
3739 
kind()3740 tree_kind IIR_RecordReference::kind () { return IR_RECORD_REFERENCE; }
3741 
kind()3742 tree_kind IIR_GenericArrayReference::kind () { return IR_GENERIC_ARRAY_REFERENCE; }
3743 
kind()3744 tree_kind IIR_ArrayReference::kind () { return IR_ARRAY_REFERENCE; }
3745 
kind()3746 tree_kind IIR_SliceReference::kind () { return IR_SLICE_REFERENCE; }
3747 
kind()3748 tree_kind IIR_SignalAttr::kind () { return IR_SIGNAL_ATTR; }
3749 
kind()3750 tree_kind IIR_Attr_DELAYED::kind () { return IR_ATTR_DELAYED; }
3751 
kind()3752 tree_kind IIR_Attr_STABLE::kind () { return IR_ATTR_STABLE; }
3753 
kind()3754 tree_kind IIR_Attr_QUIET::kind () { return IR_ATTR_QUIET; }
3755 
kind()3756 tree_kind IIR_Attr_TRANSACTION::kind () { return IR_ATTR_TRANSACTION; }
3757 
kind()3758 tree_kind IIR_FunctionAttr::kind () { return IR_FUNCTION_ATTR; }
3759 
kind()3760 tree_kind IIR_AttrSigFunc::kind () { return IR_ATTR_SIG_FUNC; }
3761 
kind()3762 tree_kind IIR_Attr_EVENT::kind () { return IR_ATTR_EVENT; }
3763 
kind()3764 tree_kind IIR_Attr_ACTIVE::kind () { return IR_ATTR_ACTIVE; }
3765 
kind()3766 tree_kind IIR_Attr_LAST_EVENT::kind () { return IR_ATTR_LAST_EVENT; }
3767 
kind()3768 tree_kind IIR_Attr_LAST_ACTIVE::kind () { return IR_ATTR_LAST_ACTIVE; }
3769 
kind()3770 tree_kind IIR_Attr_LAST_VALUE::kind () { return IR_ATTR_LAST_VALUE; }
3771 
kind()3772 tree_kind IIR_Attr_DRIVING::kind () { return IR_ATTR_DRIVING; }
3773 
kind()3774 tree_kind IIR_Attr_DRIVING_VALUE::kind () { return IR_ATTR_DRIVING_VALUE; }
3775 
kind()3776 tree_kind IIR_ValueAttr::kind () { return IR_VALUE_ATTR; }
3777 
kind()3778 tree_kind IIR_AttrTypeValue::kind () { return IR_ATTR_TYPE_VALUE; }
3779 
kind()3780 tree_kind IIR_Attr_LEFT::kind () { return IR_ATTR_LEFT; }
3781 
kind()3782 tree_kind IIR_Attr_RIGHT::kind () { return IR_ATTR_RIGHT; }
3783 
kind()3784 tree_kind IIR_Attr_LOW::kind () { return IR_ATTR_LOW; }
3785 
kind()3786 tree_kind IIR_Attr_HIGH::kind () { return IR_ATTR_HIGH; }
3787 
kind()3788 tree_kind IIR_Attr_ASCENDING::kind () { return IR_ATTR_ASCENDING; }
3789 
kind()3790 tree_kind IIR_Attr_LENGTH::kind () { return IR_ATTR_LENGTH; }
3791 
kind()3792 tree_kind IIR_AttrTypeFunc::kind () { return IR_ATTR_TYPE_FUNC; }
3793 
kind()3794 tree_kind IIR_Attr_IMAGE::kind () { return IR_ATTR_IMAGE; }
3795 
kind()3796 tree_kind IIR_Attr_VALUE::kind () { return IR_ATTR_VALUE; }
3797 
kind()3798 tree_kind IIR_Attr_POS::kind () { return IR_ATTR_POS; }
3799 
kind()3800 tree_kind IIR_Attr_VAL::kind () { return IR_ATTR_VAL; }
3801 
kind()3802 tree_kind IIR_Attr_SUCC::kind () { return IR_ATTR_SUCC; }
3803 
kind()3804 tree_kind IIR_Attr_PRED::kind () { return IR_ATTR_PRED; }
3805 
kind()3806 tree_kind IIR_Attr_LEFTOF::kind () { return IR_ATTR_LEFTOF; }
3807 
kind()3808 tree_kind IIR_Attr_RIGHTOF::kind () { return IR_ATTR_RIGHTOF; }
3809 
kind()3810 tree_kind IIR_AttrArrayFunc::kind () { return IR_ATTR_ARRAY_FUNC; }
3811 
kind()3812 tree_kind IIR_Attr_ArrayLEFT::kind () { return IR_ATTR_ARRAY_LEFT; }
3813 
kind()3814 tree_kind IIR_Attr_ArrayRIGHT::kind () { return IR_ATTR_ARRAY_RIGHT; }
3815 
kind()3816 tree_kind IIR_Attr_ArrayHIGH::kind () { return IR_ATTR_ARRAY_HIGH; }
3817 
kind()3818 tree_kind IIR_Attr_ArrayLOW::kind () { return IR_ATTR_ARRAY_LOW; }
3819 
kind()3820 tree_kind IIR_Attr_ArrayASCENDING::kind () { return IR_ATTR_ARRAY_ASCENDING; }
3821 
kind()3822 tree_kind IIR_Attr_ArrayLENGTH::kind () { return IR_ATTR_ARRAY_LENGTH; }
3823 
kind()3824 tree_kind IIR_SequentialStatement::kind () { return IR_SEQUENTIAL_STATEMENT; }
3825 
kind()3826 tree_kind IIR_WaitStatement::kind () { return IR_WAIT_STATEMENT; }
3827 
kind()3828 tree_kind IIR_AssertionStatement::kind () { return IR_ASSERTION_STATEMENT; }
3829 
kind()3830 tree_kind IIR_ReportStatement::kind () { return IR_REPORT_STATEMENT; }
3831 
kind()3832 tree_kind IIR_SignalAssignmentStatement::kind () { return IR_SIGNAL_ASSIGNMENT_STATEMENT; }
3833 
kind()3834 tree_kind IIR_VariableAssignmentStatement::kind () { return IR_VARIABLE_ASSIGNMENT_STATEMENT; }
3835 
kind()3836 tree_kind IIR_ProcedureCallStatement::kind () { return IR_PROCEDURE_CALL_STATEMENT; }
3837 
kind()3838 tree_kind IIR_IfStatement::kind () { return IR_IF_STATEMENT; }
3839 
kind()3840 tree_kind IIR_CaseStatement::kind () { return IR_CASE_STATEMENT; }
3841 
kind()3842 tree_kind IIR_LoopStatement::kind () { return IR_LOOP_STATEMENT; }
3843 
kind()3844 tree_kind IIR_ForLoopStatement::kind () { return IR_FOR_LOOP_STATEMENT; }
3845 
kind()3846 tree_kind IIR_WhileLoopStatement::kind () { return IR_WHILE_LOOP_STATEMENT; }
3847 
kind()3848 tree_kind IIR_LoopControlStatement::kind () { return IR_LOOP_CONTROL_STATEMENT; }
3849 
kind()3850 tree_kind IIR_NextStatement::kind () { return IR_NEXT_STATEMENT; }
3851 
kind()3852 tree_kind IIR_ExitStatement::kind () { return IR_EXIT_STATEMENT; }
3853 
kind()3854 tree_kind IIR_ReturnStatement::kind () { return IR_RETURN_STATEMENT; }
3855 
kind()3856 tree_kind IIR_NullStatement::kind () { return IR_NULL_STATEMENT; }
3857 
kind()3858 tree_kind IIR_ConcurrentStatement::kind () { return IR_CONCURRENT_STATEMENT; }
3859 
kind()3860 tree_kind IIR_BlockStatement::kind () { return IR_BLOCK_STATEMENT; }
3861 
kind()3862 tree_kind IIR_ProcessStatement::kind () { return IR_PROCESS_STATEMENT; }
3863 
kind()3864 tree_kind IIR_ImplicitProcessStatement::kind () { return IR_IMPLICIT_PROCESS_STATEMENT; }
3865 
kind()3866 tree_kind IIR_SensitizedProcessStatement::kind () { return IR_SENSITIZED_PROCESS_STATEMENT; }
3867 
kind()3868 tree_kind IIR_ComponentInstantiationStatement::kind () { return IR_COMPONENT_INSTANTIATION_STATEMENT; }
3869 
kind()3870 tree_kind IIR_ConcurrentGenerateStatement::kind () { return IR_CONCURRENT_GENERATE_STATEMENT; }
3871 
kind()3872 tree_kind IIR_ConcurrentGenerateForStatement::kind () { return IR_CONCURRENT_GENERATE_FOR_STATEMENT; }
3873 
kind()3874 tree_kind IIR_ConcurrentGenerateIfStatement::kind () { return IR_CONCURRENT_GENERATE_IF_STATEMENT; }
3875 
3876 static tree_kind fire_kinds[205] = {
3877   IR_POS_INFO,
3878   IR_POS_INFO_TEXT_FILE,
3879   IR_POS_INFO_SHEET,
3880   IR_ROOT,
3881   IR_DUMMY,
3882   IR_SIGNATURE,
3883   IR_LITERAL,
3884   IR_TEXT_LITERAL,
3885   IR_IDENTIFIER,
3886   IR_CHARACTER_LITERAL,
3887   IR_STRING_LITERAL,
3888   IR_ABSTRACT_LITERAL,
3889   IR_INTEGER_LITERAL,
3890   IR_FLOATING_POINT_LITERAL,
3891   IR_TUPLE,
3892   IR_ASSOCIATION_ELEMENT,
3893   IR_ASSOCIATION_ELEMENT_BY_EXPRESSION,
3894   IR_ASSOCIATION_ELEMENT_OPEN,
3895   IR_CASE_STATEMENT_ALTERNATIVE,
3896   IR_CHOICE,
3897   IR_CHOICE_BY_EXPRESSION,
3898   IR_CHOICE_BY_RANGE,
3899   IR_CHOICE_BY_OTHERS,
3900   IR_ENTITY_CLASS_ENTRY,
3901   IR_WAVEFORM_ELEMENT,
3902   IR_ELEMENT_ASSOCIATION,
3903   IR_INDEXED_ASSOCIATION,
3904   IR_SINGLE_INDEXED_ASSOCIATION,
3905   IR_RANGE_INDEXED_ASSOCIATION,
3906   IR_SLICE_INDEXED_ASSOCIATION,
3907   IR_OTHERS_INDEXED_ASSOCIATION,
3908   IR_ATTRIBUTE_VALUE,
3909   IR_LIST,
3910   IR_ASSOCIATION_LIST,
3911   IR_ATTRIBUTE_VALUE_LIST,
3912   IR_CASE_STATEMENT_ALTERNATIVE_LIST,
3913   IR_CHOICE_LIST,
3914   IR_CONCURRENT_STATEMENT_LIST,
3915   IR_CONFIGURATION_ITEM_LIST,
3916   IR_DECLARATION_LIST,
3917   IR_ELEMENT_DECLARATION_LIST,
3918   IR_ENTITY_CLASS_ENTRY_LIST,
3919   IR_ENUMERATION_LITERAL_LIST,
3920   IR_INTERFACE_LIST,
3921   IR_LIBRARY_UNIT_LIST,
3922   IR_SEQUENTIAL_STATEMENT_LIST,
3923   IR_UNIT_LIST,
3924   IR_WAVEFORM_LIST,
3925   IR_TYPE_LIST,
3926   IR_EXPRESSION_LIST,
3927   IR_INDEXED_ASSOCIATION_LIST,
3928   IR_ELEMENT_ASSOCIATION_LIST,
3929   IR_COMPONENT_INSTANTIATION_LIST,
3930   IR_CONFIGURATION_SPECIFICATION_LIST,
3931   IR_IDENTIFIER_LIST,
3932   IR_RANGE,
3933   IR_EXPLICIT_RANGE,
3934   IR_ARRAY_RANGE,
3935   IR_ATTR_ARRAY_RANGE,
3936   IR_ATTR_ARRAY_REVERSE_RANGE,
3937   IR_TYPE,
3938   IR_SUBTYPE,
3939   IR_SCALAR_TYPE,
3940   IR_SCALAR_SUBTYPE,
3941   IR_ENUMERATION_TYPE,
3942   IR_INTEGER_TYPE,
3943   IR_FLOATING_TYPE,
3944   IR_PHYSICAL_TYPE,
3945   IR_COMPOSITE_TYPE,
3946   IR_RECORD_TYPE,
3947   IR_RECORD_SUBTYPE,
3948   IR_ACCESS_TYPE,
3949   IR_FILE_TYPE,
3950   IR_ARRAY_TYPE,
3951   IR_ARRAY_SUBTYPE,
3952   IR_DECLARATION,
3953   IR_DECLARATIVE_REGION,
3954   IR_LOOP_DECLARATIVE_REGION,
3955   IR_SUBPROGRAM_DECLARATION,
3956   IR_PROCEDURE_DECLARATION,
3957   IR_PREDEFINED_PROCEDURE_DECLARATION,
3958   IR_FUNCTION_DECLARATION,
3959   IR_PREDEFINED_FUNCTION_DECLARATION,
3960   IR_ENUMERATION_LITERAL,
3961   IR_ELEMENT_DECLARATION,
3962   IR_TYPE_DECLARATION,
3963   IR_SUBTYPE_DECLARATION,
3964   IR_OBJECT_DECLARATION,
3965   IR_CONSTANT_DECLARATION,
3966   IR_VARIABLE_DECLARATION,
3967   IR_SHARED_VARIABLE_DECLARATION,
3968   IR_SIGNAL_DECLARATION,
3969   IR_FILE_DECLARATION,
3970   IR_INTERFACE_DECLARATION,
3971   IR_CONSTANT_INTERFACE_DECLARATION,
3972   IR_VARIABLE_INTERFACE_DECLARATION,
3973   IR_SIGNAL_INTERFACE_DECLARATION,
3974   IR_FILE_INTERFACE_DECLARATION,
3975   IR_ATTRIBUTE_DECLARATION,
3976   IR_COMPONENT_DECLARATION,
3977   IR_LIBRARY_DECLARATION,
3978   IR_LIBRARY_UNIT,
3979   IR_ENTITY_DECLARATION,
3980   IR_ARCHITECTURE_DECLARATION,
3981   IR_ARCHITECTURE_REF,
3982   IR_PACKAGE_DECLARATION,
3983   IR_PACKAGE_BODY_DECLARATION,
3984   IR_CONFIGURATION_DECLARATION,
3985   IR_CONFIGURATION_ITEM,
3986   IR_BLOCK_CONFIGURATION,
3987   IR_COMPONENT_CONFIGURATION,
3988   IR_PHYSICAL_UNIT,
3989   IR_BINDING_INDICATION,
3990   IR_CONFIGURATION_SPECIFICATION,
3991   IR_DISCONNECT_SPECIFICATION,
3992   IR_LABEL,
3993   IR_LIBRARY_CLAUSE,
3994   IR_USE_CLAUSE,
3995   IR_EXPRESSION,
3996   IR_ABSTRACT_LITERAL_EXPRESSION,
3997   IR_PHYSICAL_LITERAL,
3998   IR_ARRAY_LITERAL_EXPRESSION,
3999   IR_ENUM_LITERAL_REFERENCE,
4000   IR_NULL_EXPRESSION,
4001   IR_AGGREGATE,
4002   IR_RECORD_AGGREGATE,
4003   IR_ARTIFICIAL_RECORD_AGGREGATE,
4004   IR_ARRAY_AGGREGATE,
4005   IR_ARTIFICIAL_ARRAY_AGGREGATE,
4006   IR_FUNCTION_CALL,
4007   IR_QUALIFIED_EXPRESSION,
4008   IR_TYPE_CONVERSION,
4009   IR_ALLOCATOR,
4010   IR_OPEN_EXPRESSION,
4011   IR_OBJECT_REFERENCE,
4012   IR_SIMPLE_REFERENCE,
4013   IR_ACCESS_REFERENCE,
4014   IR_RECORD_REFERENCE,
4015   IR_GENERIC_ARRAY_REFERENCE,
4016   IR_ARRAY_REFERENCE,
4017   IR_SLICE_REFERENCE,
4018   IR_SIGNAL_ATTR,
4019   IR_ATTR_DELAYED,
4020   IR_ATTR_STABLE,
4021   IR_ATTR_QUIET,
4022   IR_ATTR_TRANSACTION,
4023   IR_FUNCTION_ATTR,
4024   IR_ATTR_SIG_FUNC,
4025   IR_ATTR_EVENT,
4026   IR_ATTR_ACTIVE,
4027   IR_ATTR_LAST_EVENT,
4028   IR_ATTR_LAST_ACTIVE,
4029   IR_ATTR_LAST_VALUE,
4030   IR_ATTR_DRIVING,
4031   IR_ATTR_DRIVING_VALUE,
4032   IR_VALUE_ATTR,
4033   IR_ATTR_TYPE_VALUE,
4034   IR_ATTR_LEFT,
4035   IR_ATTR_RIGHT,
4036   IR_ATTR_LOW,
4037   IR_ATTR_HIGH,
4038   IR_ATTR_ASCENDING,
4039   IR_ATTR_LENGTH,
4040   IR_ATTR_TYPE_FUNC,
4041   IR_ATTR_IMAGE,
4042   IR_ATTR_VALUE,
4043   IR_ATTR_POS,
4044   IR_ATTR_VAL,
4045   IR_ATTR_SUCC,
4046   IR_ATTR_PRED,
4047   IR_ATTR_LEFTOF,
4048   IR_ATTR_RIGHTOF,
4049   IR_ATTR_ARRAY_FUNC,
4050   IR_ATTR_ARRAY_LEFT,
4051   IR_ATTR_ARRAY_RIGHT,
4052   IR_ATTR_ARRAY_HIGH,
4053   IR_ATTR_ARRAY_LOW,
4054   IR_ATTR_ARRAY_ASCENDING,
4055   IR_ATTR_ARRAY_LENGTH,
4056   IR_SEQUENTIAL_STATEMENT,
4057   IR_WAIT_STATEMENT,
4058   IR_ASSERTION_STATEMENT,
4059   IR_REPORT_STATEMENT,
4060   IR_SIGNAL_ASSIGNMENT_STATEMENT,
4061   IR_VARIABLE_ASSIGNMENT_STATEMENT,
4062   IR_PROCEDURE_CALL_STATEMENT,
4063   IR_IF_STATEMENT,
4064   IR_CASE_STATEMENT,
4065   IR_LOOP_STATEMENT,
4066   IR_FOR_LOOP_STATEMENT,
4067   IR_WHILE_LOOP_STATEMENT,
4068   IR_LOOP_CONTROL_STATEMENT,
4069   IR_NEXT_STATEMENT,
4070   IR_EXIT_STATEMENT,
4071   IR_RETURN_STATEMENT,
4072   IR_NULL_STATEMENT,
4073   IR_CONCURRENT_STATEMENT,
4074   IR_BLOCK_STATEMENT,
4075   IR_PROCESS_STATEMENT,
4076   IR_IMPLICIT_PROCESS_STATEMENT,
4077   IR_SENSITIZED_PROCESS_STATEMENT,
4078   IR_COMPONENT_INSTANTIATION_STATEMENT,
4079   IR_CONCURRENT_GENERATE_STATEMENT,
4080   IR_CONCURRENT_GENERATE_FOR_STATEMENT,
4081   IR_CONCURRENT_GENERATE_IF_STATEMENT,
4082 };
4083 
4084 struct tree_chunk_info fire_chunk_info = {
4085   -1,
4086   "fire",
4087   205,
4088   fire_kinds
4089 };
4090 
init_fire_chunk()4091 void init_fire_chunk ()
4092 {
4093   if (fire_chunk_info.chunk_id != -1)
4094     return;
4095 
4096   tree_register_chunk (&fire_chunk_info);
4097 }
4098 
4099 struct fire_auto_initializer {
fire_auto_initializerfire_auto_initializer4100   fire_auto_initializer () { init_fire_chunk (); }
4101 } fire_ignition;
4102