[project @ 1996-01-08 20:28:12 by partain]
[ghc-hetmet.git] / ghc / compiler / yaccParser / coresyn.h
1 #ifndef coresyn_defined
2 #define coresyn_defined
3
4 #include <stdio.h>
5
6 #ifndef PROTO
7 #ifdef __STDC__
8 #define PROTO(x) x
9 #else
10 #define PROTO(x) /**/
11 #endif
12 #endif
13
14 typedef enum {
15         cobinder,
16         colit,
17         colocal,
18         cononrec,
19         corec,
20         corec_pair,
21         covar,
22         coliteral,
23         cocon,
24         coprim,
25         colam,
26         cotylam,
27         coapp,
28         cotyapp,
29         cocase,
30         colet,
31         coscc,
32         coalg_alts,
33         coalg_alt,
34         coprim_alts,
35         coprim_alt,
36         conodeflt,
37         cobinddeflt,
38         co_primop,
39         co_ccall,
40         co_casm,
41         co_preludedictscc,
42         co_alldictscc,
43         co_usercc,
44         co_autocc,
45         co_dictcc,
46         co_scc_noncaf,
47         co_scc_caf,
48         co_scc_nondupd,
49         co_scc_dupd,
50         co_id,
51         co_orig_id,
52         co_sdselid,
53         co_classopid,
54         co_defmid,
55         co_dfunid,
56         co_constmid,
57         co_specid,
58         co_wrkrid
59 } Tcoresyn;
60
61 typedef struct { Tcoresyn tag; } *coresyn;
62
63 #ifdef __GNUC__
64 extern __inline__ Tcoresyn tcoresyn(coresyn t)
65 {
66         return(t -> tag);
67 }
68 #else  /* ! __GNUC__ */
69 extern Tcoresyn tcoresyn PROTO((coresyn));
70 #endif /* ! __GNUC__ */
71
72 struct Scobinder {
73         Tcoresyn tag;
74         unkId Xgcobinder_v;
75         ttype Xgcobinder_ty;
76 };
77
78 struct Scolit {
79         Tcoresyn tag;
80         literal Xgcolit;
81 };
82
83 struct Scolocal {
84         Tcoresyn tag;
85         coresyn Xgcolocal_v;
86 };
87
88 struct Scononrec {
89         Tcoresyn tag;
90         coresyn Xgcononrec_b;
91         coresyn Xgcononrec_rhs;
92 };
93
94 struct Scorec {
95         Tcoresyn tag;
96         list Xgcorec;
97 };
98
99 struct Scorec_pair {
100         Tcoresyn tag;
101         coresyn Xgcorec_b;
102         coresyn Xgcorec_rhs;
103 };
104
105 struct Scovar {
106         Tcoresyn tag;
107         coresyn Xgcovar;
108 };
109
110 struct Scoliteral {
111         Tcoresyn tag;
112         literal Xgcoliteral;
113 };
114
115 struct Scocon {
116         Tcoresyn tag;
117         coresyn Xgcocon_con;
118         list Xgcocon_tys;
119         list Xgcocon_args;
120 };
121
122 struct Scoprim {
123         Tcoresyn tag;
124         coresyn Xgcoprim_op;
125         list Xgcoprim_tys;
126         list Xgcoprim_args;
127 };
128
129 struct Scolam {
130         Tcoresyn tag;
131         list Xgcolam_vars;
132         coresyn Xgcolam_body;
133 };
134
135 struct Scotylam {
136         Tcoresyn tag;
137         list Xgcotylam_tvs;
138         coresyn Xgcotylam_body;
139 };
140
141 struct Scoapp {
142         Tcoresyn tag;
143         coresyn Xgcoapp_fun;
144         list Xgcoapp_args;
145 };
146
147 struct Scotyapp {
148         Tcoresyn tag;
149         coresyn Xgcotyapp_e;
150         ttype Xgcotyapp_t;
151 };
152
153 struct Scocase {
154         Tcoresyn tag;
155         coresyn Xgcocase_s;
156         coresyn Xgcocase_alts;
157 };
158
159 struct Scolet {
160         Tcoresyn tag;
161         coresyn Xgcolet_bind;
162         coresyn Xgcolet_body;
163 };
164
165 struct Scoscc {
166         Tcoresyn tag;
167         coresyn Xgcoscc_scc;
168         coresyn Xgcoscc_body;
169 };
170
171 struct Scoalg_alts {
172         Tcoresyn tag;
173         list Xgcoalg_alts;
174         coresyn Xgcoalg_deflt;
175 };
176
177 struct Scoalg_alt {
178         Tcoresyn tag;
179         coresyn Xgcoalg_con;
180         list Xgcoalg_bs;
181         coresyn Xgcoalg_rhs;
182 };
183
184 struct Scoprim_alts {
185         Tcoresyn tag;
186         list Xgcoprim_alts;
187         coresyn Xgcoprim_deflt;
188 };
189
190 struct Scoprim_alt {
191         Tcoresyn tag;
192         literal Xgcoprim_lit;
193         coresyn Xgcoprim_rhs;
194 };
195
196 struct Sconodeflt {
197         Tcoresyn tag;
198 };
199
200 struct Scobinddeflt {
201         Tcoresyn tag;
202         coresyn Xgcobinddeflt_v;
203         coresyn Xgcobinddeflt_rhs;
204 };
205
206 struct Sco_primop {
207         Tcoresyn tag;
208         stringId Xgco_primop;
209 };
210
211 struct Sco_ccall {
212         Tcoresyn tag;
213         stringId Xgco_ccall;
214         long Xgco_ccall_may_gc;
215         list Xgco_ccall_arg_tys;
216         ttype Xgco_ccall_res_ty;
217 };
218
219 struct Sco_casm {
220         Tcoresyn tag;
221         literal Xgco_casm;
222         long Xgco_casm_may_gc;
223         list Xgco_casm_arg_tys;
224         ttype Xgco_casm_res_ty;
225 };
226
227 struct Sco_preludedictscc {
228         Tcoresyn tag;
229         coresyn Xgco_preludedictscc_dupd;
230 };
231
232 struct Sco_alldictscc {
233         Tcoresyn tag;
234         hstring Xgco_alldictscc_m;
235         hstring Xgco_alldictscc_g;
236         coresyn Xgco_alldictscc_dupd;
237 };
238
239 struct Sco_usercc {
240         Tcoresyn tag;
241         hstring Xgco_usercc_n;
242         hstring Xgco_usercc_m;
243         hstring Xgco_usercc_g;
244         coresyn Xgco_usercc_dupd;
245         coresyn Xgco_usercc_cafd;
246 };
247
248 struct Sco_autocc {
249         Tcoresyn tag;
250         coresyn Xgco_autocc_i;
251         hstring Xgco_autocc_m;
252         hstring Xgco_autocc_g;
253         coresyn Xgco_autocc_dupd;
254         coresyn Xgco_autocc_cafd;
255 };
256
257 struct Sco_dictcc {
258         Tcoresyn tag;
259         coresyn Xgco_dictcc_i;
260         hstring Xgco_dictcc_m;
261         hstring Xgco_dictcc_g;
262         coresyn Xgco_dictcc_dupd;
263         coresyn Xgco_dictcc_cafd;
264 };
265
266 struct Sco_scc_noncaf {
267         Tcoresyn tag;
268 };
269
270 struct Sco_scc_caf {
271         Tcoresyn tag;
272 };
273
274 struct Sco_scc_nondupd {
275         Tcoresyn tag;
276 };
277
278 struct Sco_scc_dupd {
279         Tcoresyn tag;
280 };
281
282 struct Sco_id {
283         Tcoresyn tag;
284         stringId Xgco_id;
285 };
286
287 struct Sco_orig_id {
288         Tcoresyn tag;
289         stringId Xgco_orig_id_m;
290         stringId Xgco_orig_id_n;
291 };
292
293 struct Sco_sdselid {
294         Tcoresyn tag;
295         unkId Xgco_sdselid_c;
296         unkId Xgco_sdselid_sc;
297 };
298
299 struct Sco_classopid {
300         Tcoresyn tag;
301         unkId Xgco_classopid_c;
302         unkId Xgco_classopid_o;
303 };
304
305 struct Sco_defmid {
306         Tcoresyn tag;
307         unkId Xgco_defmid_c;
308         unkId Xgco_defmid_op;
309 };
310
311 struct Sco_dfunid {
312         Tcoresyn tag;
313         unkId Xgco_dfunid_c;
314         ttype Xgco_dfunid_ty;
315 };
316
317 struct Sco_constmid {
318         Tcoresyn tag;
319         unkId Xgco_constmid_c;
320         unkId Xgco_constmid_op;
321         ttype Xgco_constmid_ty;
322 };
323
324 struct Sco_specid {
325         Tcoresyn tag;
326         coresyn Xgco_specid_un;
327         list Xgco_specid_tys;
328 };
329
330 struct Sco_wrkrid {
331         Tcoresyn tag;
332         coresyn Xgco_wrkrid_un;
333 };
334
335 extern coresyn mkcobinder PROTO((unkId, ttype));
336 #ifdef __GNUC__
337
338 extern __inline__ unkId *Rgcobinder_v(struct Scobinder *t)
339 {
340 #ifdef UGEN_DEBUG
341         if(t -> tag != cobinder)
342                 fprintf(stderr,"gcobinder_v: illegal selection; was %d\n", t -> tag);
343 #endif /* UGEN_DEBUG */
344         return(& t -> Xgcobinder_v);
345 }
346 #else  /* ! __GNUC__ */
347 extern unkId *Rgcobinder_v PROTO((struct Scobinder *));
348 #endif /* ! __GNUC__ */
349
350 #define gcobinder_v(xyzxyz) (*Rgcobinder_v((struct Scobinder *) (xyzxyz)))
351 #ifdef __GNUC__
352
353 extern __inline__ ttype *Rgcobinder_ty(struct Scobinder *t)
354 {
355 #ifdef UGEN_DEBUG
356         if(t -> tag != cobinder)
357                 fprintf(stderr,"gcobinder_ty: illegal selection; was %d\n", t -> tag);
358 #endif /* UGEN_DEBUG */
359         return(& t -> Xgcobinder_ty);
360 }
361 #else  /* ! __GNUC__ */
362 extern ttype *Rgcobinder_ty PROTO((struct Scobinder *));
363 #endif /* ! __GNUC__ */
364
365 #define gcobinder_ty(xyzxyz) (*Rgcobinder_ty((struct Scobinder *) (xyzxyz)))
366
367 extern coresyn mkcolit PROTO((literal));
368 #ifdef __GNUC__
369
370 extern __inline__ literal *Rgcolit(struct Scolit *t)
371 {
372 #ifdef UGEN_DEBUG
373         if(t -> tag != colit)
374                 fprintf(stderr,"gcolit: illegal selection; was %d\n", t -> tag);
375 #endif /* UGEN_DEBUG */
376         return(& t -> Xgcolit);
377 }
378 #else  /* ! __GNUC__ */
379 extern literal *Rgcolit PROTO((struct Scolit *));
380 #endif /* ! __GNUC__ */
381
382 #define gcolit(xyzxyz) (*Rgcolit((struct Scolit *) (xyzxyz)))
383
384 extern coresyn mkcolocal PROTO((coresyn));
385 #ifdef __GNUC__
386
387 extern __inline__ coresyn *Rgcolocal_v(struct Scolocal *t)
388 {
389 #ifdef UGEN_DEBUG
390         if(t -> tag != colocal)
391                 fprintf(stderr,"gcolocal_v: illegal selection; was %d\n", t -> tag);
392 #endif /* UGEN_DEBUG */
393         return(& t -> Xgcolocal_v);
394 }
395 #else  /* ! __GNUC__ */
396 extern coresyn *Rgcolocal_v PROTO((struct Scolocal *));
397 #endif /* ! __GNUC__ */
398
399 #define gcolocal_v(xyzxyz) (*Rgcolocal_v((struct Scolocal *) (xyzxyz)))
400
401 extern coresyn mkcononrec PROTO((coresyn, coresyn));
402 #ifdef __GNUC__
403
404 extern __inline__ coresyn *Rgcononrec_b(struct Scononrec *t)
405 {
406 #ifdef UGEN_DEBUG
407         if(t -> tag != cononrec)
408                 fprintf(stderr,"gcononrec_b: illegal selection; was %d\n", t -> tag);
409 #endif /* UGEN_DEBUG */
410         return(& t -> Xgcononrec_b);
411 }
412 #else  /* ! __GNUC__ */
413 extern coresyn *Rgcononrec_b PROTO((struct Scononrec *));
414 #endif /* ! __GNUC__ */
415
416 #define gcononrec_b(xyzxyz) (*Rgcononrec_b((struct Scononrec *) (xyzxyz)))
417 #ifdef __GNUC__
418
419 extern __inline__ coresyn *Rgcononrec_rhs(struct Scononrec *t)
420 {
421 #ifdef UGEN_DEBUG
422         if(t -> tag != cononrec)
423                 fprintf(stderr,"gcononrec_rhs: illegal selection; was %d\n", t -> tag);
424 #endif /* UGEN_DEBUG */
425         return(& t -> Xgcononrec_rhs);
426 }
427 #else  /* ! __GNUC__ */
428 extern coresyn *Rgcononrec_rhs PROTO((struct Scononrec *));
429 #endif /* ! __GNUC__ */
430
431 #define gcononrec_rhs(xyzxyz) (*Rgcononrec_rhs((struct Scononrec *) (xyzxyz)))
432
433 extern coresyn mkcorec PROTO((list));
434 #ifdef __GNUC__
435
436 extern __inline__ list *Rgcorec(struct Scorec *t)
437 {
438 #ifdef UGEN_DEBUG
439         if(t -> tag != corec)
440                 fprintf(stderr,"gcorec: illegal selection; was %d\n", t -> tag);
441 #endif /* UGEN_DEBUG */
442         return(& t -> Xgcorec);
443 }
444 #else  /* ! __GNUC__ */
445 extern list *Rgcorec PROTO((struct Scorec *));
446 #endif /* ! __GNUC__ */
447
448 #define gcorec(xyzxyz) (*Rgcorec((struct Scorec *) (xyzxyz)))
449
450 extern coresyn mkcorec_pair PROTO((coresyn, coresyn));
451 #ifdef __GNUC__
452
453 extern __inline__ coresyn *Rgcorec_b(struct Scorec_pair *t)
454 {
455 #ifdef UGEN_DEBUG
456         if(t -> tag != corec_pair)
457                 fprintf(stderr,"gcorec_b: illegal selection; was %d\n", t -> tag);
458 #endif /* UGEN_DEBUG */
459         return(& t -> Xgcorec_b);
460 }
461 #else  /* ! __GNUC__ */
462 extern coresyn *Rgcorec_b PROTO((struct Scorec_pair *));
463 #endif /* ! __GNUC__ */
464
465 #define gcorec_b(xyzxyz) (*Rgcorec_b((struct Scorec_pair *) (xyzxyz)))
466 #ifdef __GNUC__
467
468 extern __inline__ coresyn *Rgcorec_rhs(struct Scorec_pair *t)
469 {
470 #ifdef UGEN_DEBUG
471         if(t -> tag != corec_pair)
472                 fprintf(stderr,"gcorec_rhs: illegal selection; was %d\n", t -> tag);
473 #endif /* UGEN_DEBUG */
474         return(& t -> Xgcorec_rhs);
475 }
476 #else  /* ! __GNUC__ */
477 extern coresyn *Rgcorec_rhs PROTO((struct Scorec_pair *));
478 #endif /* ! __GNUC__ */
479
480 #define gcorec_rhs(xyzxyz) (*Rgcorec_rhs((struct Scorec_pair *) (xyzxyz)))
481
482 extern coresyn mkcovar PROTO((coresyn));
483 #ifdef __GNUC__
484
485 extern __inline__ coresyn *Rgcovar(struct Scovar *t)
486 {
487 #ifdef UGEN_DEBUG
488         if(t -> tag != covar)
489                 fprintf(stderr,"gcovar: illegal selection; was %d\n", t -> tag);
490 #endif /* UGEN_DEBUG */
491         return(& t -> Xgcovar);
492 }
493 #else  /* ! __GNUC__ */
494 extern coresyn *Rgcovar PROTO((struct Scovar *));
495 #endif /* ! __GNUC__ */
496
497 #define gcovar(xyzxyz) (*Rgcovar((struct Scovar *) (xyzxyz)))
498
499 extern coresyn mkcoliteral PROTO((literal));
500 #ifdef __GNUC__
501
502 extern __inline__ literal *Rgcoliteral(struct Scoliteral *t)
503 {
504 #ifdef UGEN_DEBUG
505         if(t -> tag != coliteral)
506                 fprintf(stderr,"gcoliteral: illegal selection; was %d\n", t -> tag);
507 #endif /* UGEN_DEBUG */
508         return(& t -> Xgcoliteral);
509 }
510 #else  /* ! __GNUC__ */
511 extern literal *Rgcoliteral PROTO((struct Scoliteral *));
512 #endif /* ! __GNUC__ */
513
514 #define gcoliteral(xyzxyz) (*Rgcoliteral((struct Scoliteral *) (xyzxyz)))
515
516 extern coresyn mkcocon PROTO((coresyn, list, list));
517 #ifdef __GNUC__
518
519 extern __inline__ coresyn *Rgcocon_con(struct Scocon *t)
520 {
521 #ifdef UGEN_DEBUG
522         if(t -> tag != cocon)
523                 fprintf(stderr,"gcocon_con: illegal selection; was %d\n", t -> tag);
524 #endif /* UGEN_DEBUG */
525         return(& t -> Xgcocon_con);
526 }
527 #else  /* ! __GNUC__ */
528 extern coresyn *Rgcocon_con PROTO((struct Scocon *));
529 #endif /* ! __GNUC__ */
530
531 #define gcocon_con(xyzxyz) (*Rgcocon_con((struct Scocon *) (xyzxyz)))
532 #ifdef __GNUC__
533
534 extern __inline__ list *Rgcocon_tys(struct Scocon *t)
535 {
536 #ifdef UGEN_DEBUG
537         if(t -> tag != cocon)
538                 fprintf(stderr,"gcocon_tys: illegal selection; was %d\n", t -> tag);
539 #endif /* UGEN_DEBUG */
540         return(& t -> Xgcocon_tys);
541 }
542 #else  /* ! __GNUC__ */
543 extern list *Rgcocon_tys PROTO((struct Scocon *));
544 #endif /* ! __GNUC__ */
545
546 #define gcocon_tys(xyzxyz) (*Rgcocon_tys((struct Scocon *) (xyzxyz)))
547 #ifdef __GNUC__
548
549 extern __inline__ list *Rgcocon_args(struct Scocon *t)
550 {
551 #ifdef UGEN_DEBUG
552         if(t -> tag != cocon)
553                 fprintf(stderr,"gcocon_args: illegal selection; was %d\n", t -> tag);
554 #endif /* UGEN_DEBUG */
555         return(& t -> Xgcocon_args);
556 }
557 #else  /* ! __GNUC__ */
558 extern list *Rgcocon_args PROTO((struct Scocon *));
559 #endif /* ! __GNUC__ */
560
561 #define gcocon_args(xyzxyz) (*Rgcocon_args((struct Scocon *) (xyzxyz)))
562
563 extern coresyn mkcoprim PROTO((coresyn, list, list));
564 #ifdef __GNUC__
565
566 extern __inline__ coresyn *Rgcoprim_op(struct Scoprim *t)
567 {
568 #ifdef UGEN_DEBUG
569         if(t -> tag != coprim)
570                 fprintf(stderr,"gcoprim_op: illegal selection; was %d\n", t -> tag);
571 #endif /* UGEN_DEBUG */
572         return(& t -> Xgcoprim_op);
573 }
574 #else  /* ! __GNUC__ */
575 extern coresyn *Rgcoprim_op PROTO((struct Scoprim *));
576 #endif /* ! __GNUC__ */
577
578 #define gcoprim_op(xyzxyz) (*Rgcoprim_op((struct Scoprim *) (xyzxyz)))
579 #ifdef __GNUC__
580
581 extern __inline__ list *Rgcoprim_tys(struct Scoprim *t)
582 {
583 #ifdef UGEN_DEBUG
584         if(t -> tag != coprim)
585                 fprintf(stderr,"gcoprim_tys: illegal selection; was %d\n", t -> tag);
586 #endif /* UGEN_DEBUG */
587         return(& t -> Xgcoprim_tys);
588 }
589 #else  /* ! __GNUC__ */
590 extern list *Rgcoprim_tys PROTO((struct Scoprim *));
591 #endif /* ! __GNUC__ */
592
593 #define gcoprim_tys(xyzxyz) (*Rgcoprim_tys((struct Scoprim *) (xyzxyz)))
594 #ifdef __GNUC__
595
596 extern __inline__ list *Rgcoprim_args(struct Scoprim *t)
597 {
598 #ifdef UGEN_DEBUG
599         if(t -> tag != coprim)
600                 fprintf(stderr,"gcoprim_args: illegal selection; was %d\n", t -> tag);
601 #endif /* UGEN_DEBUG */
602         return(& t -> Xgcoprim_args);
603 }
604 #else  /* ! __GNUC__ */
605 extern list *Rgcoprim_args PROTO((struct Scoprim *));
606 #endif /* ! __GNUC__ */
607
608 #define gcoprim_args(xyzxyz) (*Rgcoprim_args((struct Scoprim *) (xyzxyz)))
609
610 extern coresyn mkcolam PROTO((list, coresyn));
611 #ifdef __GNUC__
612
613 extern __inline__ list *Rgcolam_vars(struct Scolam *t)
614 {
615 #ifdef UGEN_DEBUG
616         if(t -> tag != colam)
617                 fprintf(stderr,"gcolam_vars: illegal selection; was %d\n", t -> tag);
618 #endif /* UGEN_DEBUG */
619         return(& t -> Xgcolam_vars);
620 }
621 #else  /* ! __GNUC__ */
622 extern list *Rgcolam_vars PROTO((struct Scolam *));
623 #endif /* ! __GNUC__ */
624
625 #define gcolam_vars(xyzxyz) (*Rgcolam_vars((struct Scolam *) (xyzxyz)))
626 #ifdef __GNUC__
627
628 extern __inline__ coresyn *Rgcolam_body(struct Scolam *t)
629 {
630 #ifdef UGEN_DEBUG
631         if(t -> tag != colam)
632                 fprintf(stderr,"gcolam_body: illegal selection; was %d\n", t -> tag);
633 #endif /* UGEN_DEBUG */
634         return(& t -> Xgcolam_body);
635 }
636 #else  /* ! __GNUC__ */
637 extern coresyn *Rgcolam_body PROTO((struct Scolam *));
638 #endif /* ! __GNUC__ */
639
640 #define gcolam_body(xyzxyz) (*Rgcolam_body((struct Scolam *) (xyzxyz)))
641
642 extern coresyn mkcotylam PROTO((list, coresyn));
643 #ifdef __GNUC__
644
645 extern __inline__ list *Rgcotylam_tvs(struct Scotylam *t)
646 {
647 #ifdef UGEN_DEBUG
648         if(t -> tag != cotylam)
649                 fprintf(stderr,"gcotylam_tvs: illegal selection; was %d\n", t -> tag);
650 #endif /* UGEN_DEBUG */
651         return(& t -> Xgcotylam_tvs);
652 }
653 #else  /* ! __GNUC__ */
654 extern list *Rgcotylam_tvs PROTO((struct Scotylam *));
655 #endif /* ! __GNUC__ */
656
657 #define gcotylam_tvs(xyzxyz) (*Rgcotylam_tvs((struct Scotylam *) (xyzxyz)))
658 #ifdef __GNUC__
659
660 extern __inline__ coresyn *Rgcotylam_body(struct Scotylam *t)
661 {
662 #ifdef UGEN_DEBUG
663         if(t -> tag != cotylam)
664                 fprintf(stderr,"gcotylam_body: illegal selection; was %d\n", t -> tag);
665 #endif /* UGEN_DEBUG */
666         return(& t -> Xgcotylam_body);
667 }
668 #else  /* ! __GNUC__ */
669 extern coresyn *Rgcotylam_body PROTO((struct Scotylam *));
670 #endif /* ! __GNUC__ */
671
672 #define gcotylam_body(xyzxyz) (*Rgcotylam_body((struct Scotylam *) (xyzxyz)))
673
674 extern coresyn mkcoapp PROTO((coresyn, list));
675 #ifdef __GNUC__
676
677 extern __inline__ coresyn *Rgcoapp_fun(struct Scoapp *t)
678 {
679 #ifdef UGEN_DEBUG
680         if(t -> tag != coapp)
681                 fprintf(stderr,"gcoapp_fun: illegal selection; was %d\n", t -> tag);
682 #endif /* UGEN_DEBUG */
683         return(& t -> Xgcoapp_fun);
684 }
685 #else  /* ! __GNUC__ */
686 extern coresyn *Rgcoapp_fun PROTO((struct Scoapp *));
687 #endif /* ! __GNUC__ */
688
689 #define gcoapp_fun(xyzxyz) (*Rgcoapp_fun((struct Scoapp *) (xyzxyz)))
690 #ifdef __GNUC__
691
692 extern __inline__ list *Rgcoapp_args(struct Scoapp *t)
693 {
694 #ifdef UGEN_DEBUG
695         if(t -> tag != coapp)
696                 fprintf(stderr,"gcoapp_args: illegal selection; was %d\n", t -> tag);
697 #endif /* UGEN_DEBUG */
698         return(& t -> Xgcoapp_args);
699 }
700 #else  /* ! __GNUC__ */
701 extern list *Rgcoapp_args PROTO((struct Scoapp *));
702 #endif /* ! __GNUC__ */
703
704 #define gcoapp_args(xyzxyz) (*Rgcoapp_args((struct Scoapp *) (xyzxyz)))
705
706 extern coresyn mkcotyapp PROTO((coresyn, ttype));
707 #ifdef __GNUC__
708
709 extern __inline__ coresyn *Rgcotyapp_e(struct Scotyapp *t)
710 {
711 #ifdef UGEN_DEBUG
712         if(t -> tag != cotyapp)
713                 fprintf(stderr,"gcotyapp_e: illegal selection; was %d\n", t -> tag);
714 #endif /* UGEN_DEBUG */
715         return(& t -> Xgcotyapp_e);
716 }
717 #else  /* ! __GNUC__ */
718 extern coresyn *Rgcotyapp_e PROTO((struct Scotyapp *));
719 #endif /* ! __GNUC__ */
720
721 #define gcotyapp_e(xyzxyz) (*Rgcotyapp_e((struct Scotyapp *) (xyzxyz)))
722 #ifdef __GNUC__
723
724 extern __inline__ ttype *Rgcotyapp_t(struct Scotyapp *t)
725 {
726 #ifdef UGEN_DEBUG
727         if(t -> tag != cotyapp)
728                 fprintf(stderr,"gcotyapp_t: illegal selection; was %d\n", t -> tag);
729 #endif /* UGEN_DEBUG */
730         return(& t -> Xgcotyapp_t);
731 }
732 #else  /* ! __GNUC__ */
733 extern ttype *Rgcotyapp_t PROTO((struct Scotyapp *));
734 #endif /* ! __GNUC__ */
735
736 #define gcotyapp_t(xyzxyz) (*Rgcotyapp_t((struct Scotyapp *) (xyzxyz)))
737
738 extern coresyn mkcocase PROTO((coresyn, coresyn));
739 #ifdef __GNUC__
740
741 extern __inline__ coresyn *Rgcocase_s(struct Scocase *t)
742 {
743 #ifdef UGEN_DEBUG
744         if(t -> tag != cocase)
745                 fprintf(stderr,"gcocase_s: illegal selection; was %d\n", t -> tag);
746 #endif /* UGEN_DEBUG */
747         return(& t -> Xgcocase_s);
748 }
749 #else  /* ! __GNUC__ */
750 extern coresyn *Rgcocase_s PROTO((struct Scocase *));
751 #endif /* ! __GNUC__ */
752
753 #define gcocase_s(xyzxyz) (*Rgcocase_s((struct Scocase *) (xyzxyz)))
754 #ifdef __GNUC__
755
756 extern __inline__ coresyn *Rgcocase_alts(struct Scocase *t)
757 {
758 #ifdef UGEN_DEBUG
759         if(t -> tag != cocase)
760                 fprintf(stderr,"gcocase_alts: illegal selection; was %d\n", t -> tag);
761 #endif /* UGEN_DEBUG */
762         return(& t -> Xgcocase_alts);
763 }
764 #else  /* ! __GNUC__ */
765 extern coresyn *Rgcocase_alts PROTO((struct Scocase *));
766 #endif /* ! __GNUC__ */
767
768 #define gcocase_alts(xyzxyz) (*Rgcocase_alts((struct Scocase *) (xyzxyz)))
769
770 extern coresyn mkcolet PROTO((coresyn, coresyn));
771 #ifdef __GNUC__
772
773 extern __inline__ coresyn *Rgcolet_bind(struct Scolet *t)
774 {
775 #ifdef UGEN_DEBUG
776         if(t -> tag != colet)
777                 fprintf(stderr,"gcolet_bind: illegal selection; was %d\n", t -> tag);
778 #endif /* UGEN_DEBUG */
779         return(& t -> Xgcolet_bind);
780 }
781 #else  /* ! __GNUC__ */
782 extern coresyn *Rgcolet_bind PROTO((struct Scolet *));
783 #endif /* ! __GNUC__ */
784
785 #define gcolet_bind(xyzxyz) (*Rgcolet_bind((struct Scolet *) (xyzxyz)))
786 #ifdef __GNUC__
787
788 extern __inline__ coresyn *Rgcolet_body(struct Scolet *t)
789 {
790 #ifdef UGEN_DEBUG
791         if(t -> tag != colet)
792                 fprintf(stderr,"gcolet_body: illegal selection; was %d\n", t -> tag);
793 #endif /* UGEN_DEBUG */
794         return(& t -> Xgcolet_body);
795 }
796 #else  /* ! __GNUC__ */
797 extern coresyn *Rgcolet_body PROTO((struct Scolet *));
798 #endif /* ! __GNUC__ */
799
800 #define gcolet_body(xyzxyz) (*Rgcolet_body((struct Scolet *) (xyzxyz)))
801
802 extern coresyn mkcoscc PROTO((coresyn, coresyn));
803 #ifdef __GNUC__
804
805 extern __inline__ coresyn *Rgcoscc_scc(struct Scoscc *t)
806 {
807 #ifdef UGEN_DEBUG
808         if(t -> tag != coscc)
809                 fprintf(stderr,"gcoscc_scc: illegal selection; was %d\n", t -> tag);
810 #endif /* UGEN_DEBUG */
811         return(& t -> Xgcoscc_scc);
812 }
813 #else  /* ! __GNUC__ */
814 extern coresyn *Rgcoscc_scc PROTO((struct Scoscc *));
815 #endif /* ! __GNUC__ */
816
817 #define gcoscc_scc(xyzxyz) (*Rgcoscc_scc((struct Scoscc *) (xyzxyz)))
818 #ifdef __GNUC__
819
820 extern __inline__ coresyn *Rgcoscc_body(struct Scoscc *t)
821 {
822 #ifdef UGEN_DEBUG
823         if(t -> tag != coscc)
824                 fprintf(stderr,"gcoscc_body: illegal selection; was %d\n", t -> tag);
825 #endif /* UGEN_DEBUG */
826         return(& t -> Xgcoscc_body);
827 }
828 #else  /* ! __GNUC__ */
829 extern coresyn *Rgcoscc_body PROTO((struct Scoscc *));
830 #endif /* ! __GNUC__ */
831
832 #define gcoscc_body(xyzxyz) (*Rgcoscc_body((struct Scoscc *) (xyzxyz)))
833
834 extern coresyn mkcoalg_alts PROTO((list, coresyn));
835 #ifdef __GNUC__
836
837 extern __inline__ list *Rgcoalg_alts(struct Scoalg_alts *t)
838 {
839 #ifdef UGEN_DEBUG
840         if(t -> tag != coalg_alts)
841                 fprintf(stderr,"gcoalg_alts: illegal selection; was %d\n", t -> tag);
842 #endif /* UGEN_DEBUG */
843         return(& t -> Xgcoalg_alts);
844 }
845 #else  /* ! __GNUC__ */
846 extern list *Rgcoalg_alts PROTO((struct Scoalg_alts *));
847 #endif /* ! __GNUC__ */
848
849 #define gcoalg_alts(xyzxyz) (*Rgcoalg_alts((struct Scoalg_alts *) (xyzxyz)))
850 #ifdef __GNUC__
851
852 extern __inline__ coresyn *Rgcoalg_deflt(struct Scoalg_alts *t)
853 {
854 #ifdef UGEN_DEBUG
855         if(t -> tag != coalg_alts)
856                 fprintf(stderr,"gcoalg_deflt: illegal selection; was %d\n", t -> tag);
857 #endif /* UGEN_DEBUG */
858         return(& t -> Xgcoalg_deflt);
859 }
860 #else  /* ! __GNUC__ */
861 extern coresyn *Rgcoalg_deflt PROTO((struct Scoalg_alts *));
862 #endif /* ! __GNUC__ */
863
864 #define gcoalg_deflt(xyzxyz) (*Rgcoalg_deflt((struct Scoalg_alts *) (xyzxyz)))
865
866 extern coresyn mkcoalg_alt PROTO((coresyn, list, coresyn));
867 #ifdef __GNUC__
868
869 extern __inline__ coresyn *Rgcoalg_con(struct Scoalg_alt *t)
870 {
871 #ifdef UGEN_DEBUG
872         if(t -> tag != coalg_alt)
873                 fprintf(stderr,"gcoalg_con: illegal selection; was %d\n", t -> tag);
874 #endif /* UGEN_DEBUG */
875         return(& t -> Xgcoalg_con);
876 }
877 #else  /* ! __GNUC__ */
878 extern coresyn *Rgcoalg_con PROTO((struct Scoalg_alt *));
879 #endif /* ! __GNUC__ */
880
881 #define gcoalg_con(xyzxyz) (*Rgcoalg_con((struct Scoalg_alt *) (xyzxyz)))
882 #ifdef __GNUC__
883
884 extern __inline__ list *Rgcoalg_bs(struct Scoalg_alt *t)
885 {
886 #ifdef UGEN_DEBUG
887         if(t -> tag != coalg_alt)
888                 fprintf(stderr,"gcoalg_bs: illegal selection; was %d\n", t -> tag);
889 #endif /* UGEN_DEBUG */
890         return(& t -> Xgcoalg_bs);
891 }
892 #else  /* ! __GNUC__ */
893 extern list *Rgcoalg_bs PROTO((struct Scoalg_alt *));
894 #endif /* ! __GNUC__ */
895
896 #define gcoalg_bs(xyzxyz) (*Rgcoalg_bs((struct Scoalg_alt *) (xyzxyz)))
897 #ifdef __GNUC__
898
899 extern __inline__ coresyn *Rgcoalg_rhs(struct Scoalg_alt *t)
900 {
901 #ifdef UGEN_DEBUG
902         if(t -> tag != coalg_alt)
903                 fprintf(stderr,"gcoalg_rhs: illegal selection; was %d\n", t -> tag);
904 #endif /* UGEN_DEBUG */
905         return(& t -> Xgcoalg_rhs);
906 }
907 #else  /* ! __GNUC__ */
908 extern coresyn *Rgcoalg_rhs PROTO((struct Scoalg_alt *));
909 #endif /* ! __GNUC__ */
910
911 #define gcoalg_rhs(xyzxyz) (*Rgcoalg_rhs((struct Scoalg_alt *) (xyzxyz)))
912
913 extern coresyn mkcoprim_alts PROTO((list, coresyn));
914 #ifdef __GNUC__
915
916 extern __inline__ list *Rgcoprim_alts(struct Scoprim_alts *t)
917 {
918 #ifdef UGEN_DEBUG
919         if(t -> tag != coprim_alts)
920                 fprintf(stderr,"gcoprim_alts: illegal selection; was %d\n", t -> tag);
921 #endif /* UGEN_DEBUG */
922         return(& t -> Xgcoprim_alts);
923 }
924 #else  /* ! __GNUC__ */
925 extern list *Rgcoprim_alts PROTO((struct Scoprim_alts *));
926 #endif /* ! __GNUC__ */
927
928 #define gcoprim_alts(xyzxyz) (*Rgcoprim_alts((struct Scoprim_alts *) (xyzxyz)))
929 #ifdef __GNUC__
930
931 extern __inline__ coresyn *Rgcoprim_deflt(struct Scoprim_alts *t)
932 {
933 #ifdef UGEN_DEBUG
934         if(t -> tag != coprim_alts)
935                 fprintf(stderr,"gcoprim_deflt: illegal selection; was %d\n", t -> tag);
936 #endif /* UGEN_DEBUG */
937         return(& t -> Xgcoprim_deflt);
938 }
939 #else  /* ! __GNUC__ */
940 extern coresyn *Rgcoprim_deflt PROTO((struct Scoprim_alts *));
941 #endif /* ! __GNUC__ */
942
943 #define gcoprim_deflt(xyzxyz) (*Rgcoprim_deflt((struct Scoprim_alts *) (xyzxyz)))
944
945 extern coresyn mkcoprim_alt PROTO((literal, coresyn));
946 #ifdef __GNUC__
947
948 extern __inline__ literal *Rgcoprim_lit(struct Scoprim_alt *t)
949 {
950 #ifdef UGEN_DEBUG
951         if(t -> tag != coprim_alt)
952                 fprintf(stderr,"gcoprim_lit: illegal selection; was %d\n", t -> tag);
953 #endif /* UGEN_DEBUG */
954         return(& t -> Xgcoprim_lit);
955 }
956 #else  /* ! __GNUC__ */
957 extern literal *Rgcoprim_lit PROTO((struct Scoprim_alt *));
958 #endif /* ! __GNUC__ */
959
960 #define gcoprim_lit(xyzxyz) (*Rgcoprim_lit((struct Scoprim_alt *) (xyzxyz)))
961 #ifdef __GNUC__
962
963 extern __inline__ coresyn *Rgcoprim_rhs(struct Scoprim_alt *t)
964 {
965 #ifdef UGEN_DEBUG
966         if(t -> tag != coprim_alt)
967                 fprintf(stderr,"gcoprim_rhs: illegal selection; was %d\n", t -> tag);
968 #endif /* UGEN_DEBUG */
969         return(& t -> Xgcoprim_rhs);
970 }
971 #else  /* ! __GNUC__ */
972 extern coresyn *Rgcoprim_rhs PROTO((struct Scoprim_alt *));
973 #endif /* ! __GNUC__ */
974
975 #define gcoprim_rhs(xyzxyz) (*Rgcoprim_rhs((struct Scoprim_alt *) (xyzxyz)))
976
977 extern coresyn mkconodeflt PROTO(());
978
979 extern coresyn mkcobinddeflt PROTO((coresyn, coresyn));
980 #ifdef __GNUC__
981
982 extern __inline__ coresyn *Rgcobinddeflt_v(struct Scobinddeflt *t)
983 {
984 #ifdef UGEN_DEBUG
985         if(t -> tag != cobinddeflt)
986                 fprintf(stderr,"gcobinddeflt_v: illegal selection; was %d\n", t -> tag);
987 #endif /* UGEN_DEBUG */
988         return(& t -> Xgcobinddeflt_v);
989 }
990 #else  /* ! __GNUC__ */
991 extern coresyn *Rgcobinddeflt_v PROTO((struct Scobinddeflt *));
992 #endif /* ! __GNUC__ */
993
994 #define gcobinddeflt_v(xyzxyz) (*Rgcobinddeflt_v((struct Scobinddeflt *) (xyzxyz)))
995 #ifdef __GNUC__
996
997 extern __inline__ coresyn *Rgcobinddeflt_rhs(struct Scobinddeflt *t)
998 {
999 #ifdef UGEN_DEBUG
1000         if(t -> tag != cobinddeflt)
1001                 fprintf(stderr,"gcobinddeflt_rhs: illegal selection; was %d\n", t -> tag);
1002 #endif /* UGEN_DEBUG */
1003         return(& t -> Xgcobinddeflt_rhs);
1004 }
1005 #else  /* ! __GNUC__ */
1006 extern coresyn *Rgcobinddeflt_rhs PROTO((struct Scobinddeflt *));
1007 #endif /* ! __GNUC__ */
1008
1009 #define gcobinddeflt_rhs(xyzxyz) (*Rgcobinddeflt_rhs((struct Scobinddeflt *) (xyzxyz)))
1010
1011 extern coresyn mkco_primop PROTO((stringId));
1012 #ifdef __GNUC__
1013
1014 extern __inline__ stringId *Rgco_primop(struct Sco_primop *t)
1015 {
1016 #ifdef UGEN_DEBUG
1017         if(t -> tag != co_primop)
1018                 fprintf(stderr,"gco_primop: illegal selection; was %d\n", t -> tag);
1019 #endif /* UGEN_DEBUG */
1020         return(& t -> Xgco_primop);
1021 }
1022 #else  /* ! __GNUC__ */
1023 extern stringId *Rgco_primop PROTO((struct Sco_primop *));
1024 #endif /* ! __GNUC__ */
1025
1026 #define gco_primop(xyzxyz) (*Rgco_primop((struct Sco_primop *) (xyzxyz)))
1027
1028 extern coresyn mkco_ccall PROTO((stringId, long, list, ttype));
1029 #ifdef __GNUC__
1030
1031 extern __inline__ stringId *Rgco_ccall(struct Sco_ccall *t)
1032 {
1033 #ifdef UGEN_DEBUG
1034         if(t -> tag != co_ccall)
1035                 fprintf(stderr,"gco_ccall: illegal selection; was %d\n", t -> tag);
1036 #endif /* UGEN_DEBUG */
1037         return(& t -> Xgco_ccall);
1038 }
1039 #else  /* ! __GNUC__ */
1040 extern stringId *Rgco_ccall PROTO((struct Sco_ccall *));
1041 #endif /* ! __GNUC__ */
1042
1043 #define gco_ccall(xyzxyz) (*Rgco_ccall((struct Sco_ccall *) (xyzxyz)))
1044 #ifdef __GNUC__
1045
1046 extern __inline__ long *Rgco_ccall_may_gc(struct Sco_ccall *t)
1047 {
1048 #ifdef UGEN_DEBUG
1049         if(t -> tag != co_ccall)
1050                 fprintf(stderr,"gco_ccall_may_gc: illegal selection; was %d\n", t -> tag);
1051 #endif /* UGEN_DEBUG */
1052         return(& t -> Xgco_ccall_may_gc);
1053 }
1054 #else  /* ! __GNUC__ */
1055 extern long *Rgco_ccall_may_gc PROTO((struct Sco_ccall *));
1056 #endif /* ! __GNUC__ */
1057
1058 #define gco_ccall_may_gc(xyzxyz) (*Rgco_ccall_may_gc((struct Sco_ccall *) (xyzxyz)))
1059 #ifdef __GNUC__
1060
1061 extern __inline__ list *Rgco_ccall_arg_tys(struct Sco_ccall *t)
1062 {
1063 #ifdef UGEN_DEBUG
1064         if(t -> tag != co_ccall)
1065                 fprintf(stderr,"gco_ccall_arg_tys: illegal selection; was %d\n", t -> tag);
1066 #endif /* UGEN_DEBUG */
1067         return(& t -> Xgco_ccall_arg_tys);
1068 }
1069 #else  /* ! __GNUC__ */
1070 extern list *Rgco_ccall_arg_tys PROTO((struct Sco_ccall *));
1071 #endif /* ! __GNUC__ */
1072
1073 #define gco_ccall_arg_tys(xyzxyz) (*Rgco_ccall_arg_tys((struct Sco_ccall *) (xyzxyz)))
1074 #ifdef __GNUC__
1075
1076 extern __inline__ ttype *Rgco_ccall_res_ty(struct Sco_ccall *t)
1077 {
1078 #ifdef UGEN_DEBUG
1079         if(t -> tag != co_ccall)
1080                 fprintf(stderr,"gco_ccall_res_ty: illegal selection; was %d\n", t -> tag);
1081 #endif /* UGEN_DEBUG */
1082         return(& t -> Xgco_ccall_res_ty);
1083 }
1084 #else  /* ! __GNUC__ */
1085 extern ttype *Rgco_ccall_res_ty PROTO((struct Sco_ccall *));
1086 #endif /* ! __GNUC__ */
1087
1088 #define gco_ccall_res_ty(xyzxyz) (*Rgco_ccall_res_ty((struct Sco_ccall *) (xyzxyz)))
1089
1090 extern coresyn mkco_casm PROTO((literal, long, list, ttype));
1091 #ifdef __GNUC__
1092
1093 extern __inline__ literal *Rgco_casm(struct Sco_casm *t)
1094 {
1095 #ifdef UGEN_DEBUG
1096         if(t -> tag != co_casm)
1097                 fprintf(stderr,"gco_casm: illegal selection; was %d\n", t -> tag);
1098 #endif /* UGEN_DEBUG */
1099         return(& t -> Xgco_casm);
1100 }
1101 #else  /* ! __GNUC__ */
1102 extern literal *Rgco_casm PROTO((struct Sco_casm *));
1103 #endif /* ! __GNUC__ */
1104
1105 #define gco_casm(xyzxyz) (*Rgco_casm((struct Sco_casm *) (xyzxyz)))
1106 #ifdef __GNUC__
1107
1108 extern __inline__ long *Rgco_casm_may_gc(struct Sco_casm *t)
1109 {
1110 #ifdef UGEN_DEBUG
1111         if(t -> tag != co_casm)
1112                 fprintf(stderr,"gco_casm_may_gc: illegal selection; was %d\n", t -> tag);
1113 #endif /* UGEN_DEBUG */
1114         return(& t -> Xgco_casm_may_gc);
1115 }
1116 #else  /* ! __GNUC__ */
1117 extern long *Rgco_casm_may_gc PROTO((struct Sco_casm *));
1118 #endif /* ! __GNUC__ */
1119
1120 #define gco_casm_may_gc(xyzxyz) (*Rgco_casm_may_gc((struct Sco_casm *) (xyzxyz)))
1121 #ifdef __GNUC__
1122
1123 extern __inline__ list *Rgco_casm_arg_tys(struct Sco_casm *t)
1124 {
1125 #ifdef UGEN_DEBUG
1126         if(t -> tag != co_casm)
1127                 fprintf(stderr,"gco_casm_arg_tys: illegal selection; was %d\n", t -> tag);
1128 #endif /* UGEN_DEBUG */
1129         return(& t -> Xgco_casm_arg_tys);
1130 }
1131 #else  /* ! __GNUC__ */
1132 extern list *Rgco_casm_arg_tys PROTO((struct Sco_casm *));
1133 #endif /* ! __GNUC__ */
1134
1135 #define gco_casm_arg_tys(xyzxyz) (*Rgco_casm_arg_tys((struct Sco_casm *) (xyzxyz)))
1136 #ifdef __GNUC__
1137
1138 extern __inline__ ttype *Rgco_casm_res_ty(struct Sco_casm *t)
1139 {
1140 #ifdef UGEN_DEBUG
1141         if(t -> tag != co_casm)
1142                 fprintf(stderr,"gco_casm_res_ty: illegal selection; was %d\n", t -> tag);
1143 #endif /* UGEN_DEBUG */
1144         return(& t -> Xgco_casm_res_ty);
1145 }
1146 #else  /* ! __GNUC__ */
1147 extern ttype *Rgco_casm_res_ty PROTO((struct Sco_casm *));
1148 #endif /* ! __GNUC__ */
1149
1150 #define gco_casm_res_ty(xyzxyz) (*Rgco_casm_res_ty((struct Sco_casm *) (xyzxyz)))
1151
1152 extern coresyn mkco_preludedictscc PROTO((coresyn));
1153 #ifdef __GNUC__
1154
1155 extern __inline__ coresyn *Rgco_preludedictscc_dupd(struct Sco_preludedictscc *t)
1156 {
1157 #ifdef UGEN_DEBUG
1158         if(t -> tag != co_preludedictscc)
1159                 fprintf(stderr,"gco_preludedictscc_dupd: illegal selection; was %d\n", t -> tag);
1160 #endif /* UGEN_DEBUG */
1161         return(& t -> Xgco_preludedictscc_dupd);
1162 }
1163 #else  /* ! __GNUC__ */
1164 extern coresyn *Rgco_preludedictscc_dupd PROTO((struct Sco_preludedictscc *));
1165 #endif /* ! __GNUC__ */
1166
1167 #define gco_preludedictscc_dupd(xyzxyz) (*Rgco_preludedictscc_dupd((struct Sco_preludedictscc *) (xyzxyz)))
1168
1169 extern coresyn mkco_alldictscc PROTO((hstring, hstring, coresyn));
1170 #ifdef __GNUC__
1171
1172 extern __inline__ hstring *Rgco_alldictscc_m(struct Sco_alldictscc *t)
1173 {
1174 #ifdef UGEN_DEBUG
1175         if(t -> tag != co_alldictscc)
1176                 fprintf(stderr,"gco_alldictscc_m: illegal selection; was %d\n", t -> tag);
1177 #endif /* UGEN_DEBUG */
1178         return(& t -> Xgco_alldictscc_m);
1179 }
1180 #else  /* ! __GNUC__ */
1181 extern hstring *Rgco_alldictscc_m PROTO((struct Sco_alldictscc *));
1182 #endif /* ! __GNUC__ */
1183
1184 #define gco_alldictscc_m(xyzxyz) (*Rgco_alldictscc_m((struct Sco_alldictscc *) (xyzxyz)))
1185 #ifdef __GNUC__
1186
1187 extern __inline__ hstring *Rgco_alldictscc_g(struct Sco_alldictscc *t)
1188 {
1189 #ifdef UGEN_DEBUG
1190         if(t -> tag != co_alldictscc)
1191                 fprintf(stderr,"gco_alldictscc_g: illegal selection; was %d\n", t -> tag);
1192 #endif /* UGEN_DEBUG */
1193         return(& t -> Xgco_alldictscc_g);
1194 }
1195 #else  /* ! __GNUC__ */
1196 extern hstring *Rgco_alldictscc_g PROTO((struct Sco_alldictscc *));
1197 #endif /* ! __GNUC__ */
1198
1199 #define gco_alldictscc_g(xyzxyz) (*Rgco_alldictscc_g((struct Sco_alldictscc *) (xyzxyz)))
1200 #ifdef __GNUC__
1201
1202 extern __inline__ coresyn *Rgco_alldictscc_dupd(struct Sco_alldictscc *t)
1203 {
1204 #ifdef UGEN_DEBUG
1205         if(t -> tag != co_alldictscc)
1206                 fprintf(stderr,"gco_alldictscc_dupd: illegal selection; was %d\n", t -> tag);
1207 #endif /* UGEN_DEBUG */
1208         return(& t -> Xgco_alldictscc_dupd);
1209 }
1210 #else  /* ! __GNUC__ */
1211 extern coresyn *Rgco_alldictscc_dupd PROTO((struct Sco_alldictscc *));
1212 #endif /* ! __GNUC__ */
1213
1214 #define gco_alldictscc_dupd(xyzxyz) (*Rgco_alldictscc_dupd((struct Sco_alldictscc *) (xyzxyz)))
1215
1216 extern coresyn mkco_usercc PROTO((hstring, hstring, hstring, coresyn, coresyn));
1217 #ifdef __GNUC__
1218
1219 extern __inline__ hstring *Rgco_usercc_n(struct Sco_usercc *t)
1220 {
1221 #ifdef UGEN_DEBUG
1222         if(t -> tag != co_usercc)
1223                 fprintf(stderr,"gco_usercc_n: illegal selection; was %d\n", t -> tag);
1224 #endif /* UGEN_DEBUG */
1225         return(& t -> Xgco_usercc_n);
1226 }
1227 #else  /* ! __GNUC__ */
1228 extern hstring *Rgco_usercc_n PROTO((struct Sco_usercc *));
1229 #endif /* ! __GNUC__ */
1230
1231 #define gco_usercc_n(xyzxyz) (*Rgco_usercc_n((struct Sco_usercc *) (xyzxyz)))
1232 #ifdef __GNUC__
1233
1234 extern __inline__ hstring *Rgco_usercc_m(struct Sco_usercc *t)
1235 {
1236 #ifdef UGEN_DEBUG
1237         if(t -> tag != co_usercc)
1238                 fprintf(stderr,"gco_usercc_m: illegal selection; was %d\n", t -> tag);
1239 #endif /* UGEN_DEBUG */
1240         return(& t -> Xgco_usercc_m);
1241 }
1242 #else  /* ! __GNUC__ */
1243 extern hstring *Rgco_usercc_m PROTO((struct Sco_usercc *));
1244 #endif /* ! __GNUC__ */
1245
1246 #define gco_usercc_m(xyzxyz) (*Rgco_usercc_m((struct Sco_usercc *) (xyzxyz)))
1247 #ifdef __GNUC__
1248
1249 extern __inline__ hstring *Rgco_usercc_g(struct Sco_usercc *t)
1250 {
1251 #ifdef UGEN_DEBUG
1252         if(t -> tag != co_usercc)
1253                 fprintf(stderr,"gco_usercc_g: illegal selection; was %d\n", t -> tag);
1254 #endif /* UGEN_DEBUG */
1255         return(& t -> Xgco_usercc_g);
1256 }
1257 #else  /* ! __GNUC__ */
1258 extern hstring *Rgco_usercc_g PROTO((struct Sco_usercc *));
1259 #endif /* ! __GNUC__ */
1260
1261 #define gco_usercc_g(xyzxyz) (*Rgco_usercc_g((struct Sco_usercc *) (xyzxyz)))
1262 #ifdef __GNUC__
1263
1264 extern __inline__ coresyn *Rgco_usercc_dupd(struct Sco_usercc *t)
1265 {
1266 #ifdef UGEN_DEBUG
1267         if(t -> tag != co_usercc)
1268                 fprintf(stderr,"gco_usercc_dupd: illegal selection; was %d\n", t -> tag);
1269 #endif /* UGEN_DEBUG */
1270         return(& t -> Xgco_usercc_dupd);
1271 }
1272 #else  /* ! __GNUC__ */
1273 extern coresyn *Rgco_usercc_dupd PROTO((struct Sco_usercc *));
1274 #endif /* ! __GNUC__ */
1275
1276 #define gco_usercc_dupd(xyzxyz) (*Rgco_usercc_dupd((struct Sco_usercc *) (xyzxyz)))
1277 #ifdef __GNUC__
1278
1279 extern __inline__ coresyn *Rgco_usercc_cafd(struct Sco_usercc *t)
1280 {
1281 #ifdef UGEN_DEBUG
1282         if(t -> tag != co_usercc)
1283                 fprintf(stderr,"gco_usercc_cafd: illegal selection; was %d\n", t -> tag);
1284 #endif /* UGEN_DEBUG */
1285         return(& t -> Xgco_usercc_cafd);
1286 }
1287 #else  /* ! __GNUC__ */
1288 extern coresyn *Rgco_usercc_cafd PROTO((struct Sco_usercc *));
1289 #endif /* ! __GNUC__ */
1290
1291 #define gco_usercc_cafd(xyzxyz) (*Rgco_usercc_cafd((struct Sco_usercc *) (xyzxyz)))
1292
1293 extern coresyn mkco_autocc PROTO((coresyn, hstring, hstring, coresyn, coresyn));
1294 #ifdef __GNUC__
1295
1296 extern __inline__ coresyn *Rgco_autocc_i(struct Sco_autocc *t)
1297 {
1298 #ifdef UGEN_DEBUG
1299         if(t -> tag != co_autocc)
1300                 fprintf(stderr,"gco_autocc_i: illegal selection; was %d\n", t -> tag);
1301 #endif /* UGEN_DEBUG */
1302         return(& t -> Xgco_autocc_i);
1303 }
1304 #else  /* ! __GNUC__ */
1305 extern coresyn *Rgco_autocc_i PROTO((struct Sco_autocc *));
1306 #endif /* ! __GNUC__ */
1307
1308 #define gco_autocc_i(xyzxyz) (*Rgco_autocc_i((struct Sco_autocc *) (xyzxyz)))
1309 #ifdef __GNUC__
1310
1311 extern __inline__ hstring *Rgco_autocc_m(struct Sco_autocc *t)
1312 {
1313 #ifdef UGEN_DEBUG
1314         if(t -> tag != co_autocc)
1315                 fprintf(stderr,"gco_autocc_m: illegal selection; was %d\n", t -> tag);
1316 #endif /* UGEN_DEBUG */
1317         return(& t -> Xgco_autocc_m);
1318 }
1319 #else  /* ! __GNUC__ */
1320 extern hstring *Rgco_autocc_m PROTO((struct Sco_autocc *));
1321 #endif /* ! __GNUC__ */
1322
1323 #define gco_autocc_m(xyzxyz) (*Rgco_autocc_m((struct Sco_autocc *) (xyzxyz)))
1324 #ifdef __GNUC__
1325
1326 extern __inline__ hstring *Rgco_autocc_g(struct Sco_autocc *t)
1327 {
1328 #ifdef UGEN_DEBUG
1329         if(t -> tag != co_autocc)
1330                 fprintf(stderr,"gco_autocc_g: illegal selection; was %d\n", t -> tag);
1331 #endif /* UGEN_DEBUG */
1332         return(& t -> Xgco_autocc_g);
1333 }
1334 #else  /* ! __GNUC__ */
1335 extern hstring *Rgco_autocc_g PROTO((struct Sco_autocc *));
1336 #endif /* ! __GNUC__ */
1337
1338 #define gco_autocc_g(xyzxyz) (*Rgco_autocc_g((struct Sco_autocc *) (xyzxyz)))
1339 #ifdef __GNUC__
1340
1341 extern __inline__ coresyn *Rgco_autocc_dupd(struct Sco_autocc *t)
1342 {
1343 #ifdef UGEN_DEBUG
1344         if(t -> tag != co_autocc)
1345                 fprintf(stderr,"gco_autocc_dupd: illegal selection; was %d\n", t -> tag);
1346 #endif /* UGEN_DEBUG */
1347         return(& t -> Xgco_autocc_dupd);
1348 }
1349 #else  /* ! __GNUC__ */
1350 extern coresyn *Rgco_autocc_dupd PROTO((struct Sco_autocc *));
1351 #endif /* ! __GNUC__ */
1352
1353 #define gco_autocc_dupd(xyzxyz) (*Rgco_autocc_dupd((struct Sco_autocc *) (xyzxyz)))
1354 #ifdef __GNUC__
1355
1356 extern __inline__ coresyn *Rgco_autocc_cafd(struct Sco_autocc *t)
1357 {
1358 #ifdef UGEN_DEBUG
1359         if(t -> tag != co_autocc)
1360                 fprintf(stderr,"gco_autocc_cafd: illegal selection; was %d\n", t -> tag);
1361 #endif /* UGEN_DEBUG */
1362         return(& t -> Xgco_autocc_cafd);
1363 }
1364 #else  /* ! __GNUC__ */
1365 extern coresyn *Rgco_autocc_cafd PROTO((struct Sco_autocc *));
1366 #endif /* ! __GNUC__ */
1367
1368 #define gco_autocc_cafd(xyzxyz) (*Rgco_autocc_cafd((struct Sco_autocc *) (xyzxyz)))
1369
1370 extern coresyn mkco_dictcc PROTO((coresyn, hstring, hstring, coresyn, coresyn));
1371 #ifdef __GNUC__
1372
1373 extern __inline__ coresyn *Rgco_dictcc_i(struct Sco_dictcc *t)
1374 {
1375 #ifdef UGEN_DEBUG
1376         if(t -> tag != co_dictcc)
1377                 fprintf(stderr,"gco_dictcc_i: illegal selection; was %d\n", t -> tag);
1378 #endif /* UGEN_DEBUG */
1379         return(& t -> Xgco_dictcc_i);
1380 }
1381 #else  /* ! __GNUC__ */
1382 extern coresyn *Rgco_dictcc_i PROTO((struct Sco_dictcc *));
1383 #endif /* ! __GNUC__ */
1384
1385 #define gco_dictcc_i(xyzxyz) (*Rgco_dictcc_i((struct Sco_dictcc *) (xyzxyz)))
1386 #ifdef __GNUC__
1387
1388 extern __inline__ hstring *Rgco_dictcc_m(struct Sco_dictcc *t)
1389 {
1390 #ifdef UGEN_DEBUG
1391         if(t -> tag != co_dictcc)
1392                 fprintf(stderr,"gco_dictcc_m: illegal selection; was %d\n", t -> tag);
1393 #endif /* UGEN_DEBUG */
1394         return(& t -> Xgco_dictcc_m);
1395 }
1396 #else  /* ! __GNUC__ */
1397 extern hstring *Rgco_dictcc_m PROTO((struct Sco_dictcc *));
1398 #endif /* ! __GNUC__ */
1399
1400 #define gco_dictcc_m(xyzxyz) (*Rgco_dictcc_m((struct Sco_dictcc *) (xyzxyz)))
1401 #ifdef __GNUC__
1402
1403 extern __inline__ hstring *Rgco_dictcc_g(struct Sco_dictcc *t)
1404 {
1405 #ifdef UGEN_DEBUG
1406         if(t -> tag != co_dictcc)
1407                 fprintf(stderr,"gco_dictcc_g: illegal selection; was %d\n", t -> tag);
1408 #endif /* UGEN_DEBUG */
1409         return(& t -> Xgco_dictcc_g);
1410 }
1411 #else  /* ! __GNUC__ */
1412 extern hstring *Rgco_dictcc_g PROTO((struct Sco_dictcc *));
1413 #endif /* ! __GNUC__ */
1414
1415 #define gco_dictcc_g(xyzxyz) (*Rgco_dictcc_g((struct Sco_dictcc *) (xyzxyz)))
1416 #ifdef __GNUC__
1417
1418 extern __inline__ coresyn *Rgco_dictcc_dupd(struct Sco_dictcc *t)
1419 {
1420 #ifdef UGEN_DEBUG
1421         if(t -> tag != co_dictcc)
1422                 fprintf(stderr,"gco_dictcc_dupd: illegal selection; was %d\n", t -> tag);
1423 #endif /* UGEN_DEBUG */
1424         return(& t -> Xgco_dictcc_dupd);
1425 }
1426 #else  /* ! __GNUC__ */
1427 extern coresyn *Rgco_dictcc_dupd PROTO((struct Sco_dictcc *));
1428 #endif /* ! __GNUC__ */
1429
1430 #define gco_dictcc_dupd(xyzxyz) (*Rgco_dictcc_dupd((struct Sco_dictcc *) (xyzxyz)))
1431 #ifdef __GNUC__
1432
1433 extern __inline__ coresyn *Rgco_dictcc_cafd(struct Sco_dictcc *t)
1434 {
1435 #ifdef UGEN_DEBUG
1436         if(t -> tag != co_dictcc)
1437                 fprintf(stderr,"gco_dictcc_cafd: illegal selection; was %d\n", t -> tag);
1438 #endif /* UGEN_DEBUG */
1439         return(& t -> Xgco_dictcc_cafd);
1440 }
1441 #else  /* ! __GNUC__ */
1442 extern coresyn *Rgco_dictcc_cafd PROTO((struct Sco_dictcc *));
1443 #endif /* ! __GNUC__ */
1444
1445 #define gco_dictcc_cafd(xyzxyz) (*Rgco_dictcc_cafd((struct Sco_dictcc *) (xyzxyz)))
1446
1447 extern coresyn mkco_scc_noncaf PROTO(());
1448
1449 extern coresyn mkco_scc_caf PROTO(());
1450
1451 extern coresyn mkco_scc_nondupd PROTO(());
1452
1453 extern coresyn mkco_scc_dupd PROTO(());
1454
1455 extern coresyn mkco_id PROTO((stringId));
1456 #ifdef __GNUC__
1457
1458 extern __inline__ stringId *Rgco_id(struct Sco_id *t)
1459 {
1460 #ifdef UGEN_DEBUG
1461         if(t -> tag != co_id)
1462                 fprintf(stderr,"gco_id: illegal selection; was %d\n", t -> tag);
1463 #endif /* UGEN_DEBUG */
1464         return(& t -> Xgco_id);
1465 }
1466 #else  /* ! __GNUC__ */
1467 extern stringId *Rgco_id PROTO((struct Sco_id *));
1468 #endif /* ! __GNUC__ */
1469
1470 #define gco_id(xyzxyz) (*Rgco_id((struct Sco_id *) (xyzxyz)))
1471
1472 extern coresyn mkco_orig_id PROTO((stringId, stringId));
1473 #ifdef __GNUC__
1474
1475 extern __inline__ stringId *Rgco_orig_id_m(struct Sco_orig_id *t)
1476 {
1477 #ifdef UGEN_DEBUG
1478         if(t -> tag != co_orig_id)
1479                 fprintf(stderr,"gco_orig_id_m: illegal selection; was %d\n", t -> tag);
1480 #endif /* UGEN_DEBUG */
1481         return(& t -> Xgco_orig_id_m);
1482 }
1483 #else  /* ! __GNUC__ */
1484 extern stringId *Rgco_orig_id_m PROTO((struct Sco_orig_id *));
1485 #endif /* ! __GNUC__ */
1486
1487 #define gco_orig_id_m(xyzxyz) (*Rgco_orig_id_m((struct Sco_orig_id *) (xyzxyz)))
1488 #ifdef __GNUC__
1489
1490 extern __inline__ stringId *Rgco_orig_id_n(struct Sco_orig_id *t)
1491 {
1492 #ifdef UGEN_DEBUG
1493         if(t -> tag != co_orig_id)
1494                 fprintf(stderr,"gco_orig_id_n: illegal selection; was %d\n", t -> tag);
1495 #endif /* UGEN_DEBUG */
1496         return(& t -> Xgco_orig_id_n);
1497 }
1498 #else  /* ! __GNUC__ */
1499 extern stringId *Rgco_orig_id_n PROTO((struct Sco_orig_id *));
1500 #endif /* ! __GNUC__ */
1501
1502 #define gco_orig_id_n(xyzxyz) (*Rgco_orig_id_n((struct Sco_orig_id *) (xyzxyz)))
1503
1504 extern coresyn mkco_sdselid PROTO((unkId, unkId));
1505 #ifdef __GNUC__
1506
1507 extern __inline__ unkId *Rgco_sdselid_c(struct Sco_sdselid *t)
1508 {
1509 #ifdef UGEN_DEBUG
1510         if(t -> tag != co_sdselid)
1511                 fprintf(stderr,"gco_sdselid_c: illegal selection; was %d\n", t -> tag);
1512 #endif /* UGEN_DEBUG */
1513         return(& t -> Xgco_sdselid_c);
1514 }
1515 #else  /* ! __GNUC__ */
1516 extern unkId *Rgco_sdselid_c PROTO((struct Sco_sdselid *));
1517 #endif /* ! __GNUC__ */
1518
1519 #define gco_sdselid_c(xyzxyz) (*Rgco_sdselid_c((struct Sco_sdselid *) (xyzxyz)))
1520 #ifdef __GNUC__
1521
1522 extern __inline__ unkId *Rgco_sdselid_sc(struct Sco_sdselid *t)
1523 {
1524 #ifdef UGEN_DEBUG
1525         if(t -> tag != co_sdselid)
1526                 fprintf(stderr,"gco_sdselid_sc: illegal selection; was %d\n", t -> tag);
1527 #endif /* UGEN_DEBUG */
1528         return(& t -> Xgco_sdselid_sc);
1529 }
1530 #else  /* ! __GNUC__ */
1531 extern unkId *Rgco_sdselid_sc PROTO((struct Sco_sdselid *));
1532 #endif /* ! __GNUC__ */
1533
1534 #define gco_sdselid_sc(xyzxyz) (*Rgco_sdselid_sc((struct Sco_sdselid *) (xyzxyz)))
1535
1536 extern coresyn mkco_classopid PROTO((unkId, unkId));
1537 #ifdef __GNUC__
1538
1539 extern __inline__ unkId *Rgco_classopid_c(struct Sco_classopid *t)
1540 {
1541 #ifdef UGEN_DEBUG
1542         if(t -> tag != co_classopid)
1543                 fprintf(stderr,"gco_classopid_c: illegal selection; was %d\n", t -> tag);
1544 #endif /* UGEN_DEBUG */
1545         return(& t -> Xgco_classopid_c);
1546 }
1547 #else  /* ! __GNUC__ */
1548 extern unkId *Rgco_classopid_c PROTO((struct Sco_classopid *));
1549 #endif /* ! __GNUC__ */
1550
1551 #define gco_classopid_c(xyzxyz) (*Rgco_classopid_c((struct Sco_classopid *) (xyzxyz)))
1552 #ifdef __GNUC__
1553
1554 extern __inline__ unkId *Rgco_classopid_o(struct Sco_classopid *t)
1555 {
1556 #ifdef UGEN_DEBUG
1557         if(t -> tag != co_classopid)
1558                 fprintf(stderr,"gco_classopid_o: illegal selection; was %d\n", t -> tag);
1559 #endif /* UGEN_DEBUG */
1560         return(& t -> Xgco_classopid_o);
1561 }
1562 #else  /* ! __GNUC__ */
1563 extern unkId *Rgco_classopid_o PROTO((struct Sco_classopid *));
1564 #endif /* ! __GNUC__ */
1565
1566 #define gco_classopid_o(xyzxyz) (*Rgco_classopid_o((struct Sco_classopid *) (xyzxyz)))
1567
1568 extern coresyn mkco_defmid PROTO((unkId, unkId));
1569 #ifdef __GNUC__
1570
1571 extern __inline__ unkId *Rgco_defmid_c(struct Sco_defmid *t)
1572 {
1573 #ifdef UGEN_DEBUG
1574         if(t -> tag != co_defmid)
1575                 fprintf(stderr,"gco_defmid_c: illegal selection; was %d\n", t -> tag);
1576 #endif /* UGEN_DEBUG */
1577         return(& t -> Xgco_defmid_c);
1578 }
1579 #else  /* ! __GNUC__ */
1580 extern unkId *Rgco_defmid_c PROTO((struct Sco_defmid *));
1581 #endif /* ! __GNUC__ */
1582
1583 #define gco_defmid_c(xyzxyz) (*Rgco_defmid_c((struct Sco_defmid *) (xyzxyz)))
1584 #ifdef __GNUC__
1585
1586 extern __inline__ unkId *Rgco_defmid_op(struct Sco_defmid *t)
1587 {
1588 #ifdef UGEN_DEBUG
1589         if(t -> tag != co_defmid)
1590                 fprintf(stderr,"gco_defmid_op: illegal selection; was %d\n", t -> tag);
1591 #endif /* UGEN_DEBUG */
1592         return(& t -> Xgco_defmid_op);
1593 }
1594 #else  /* ! __GNUC__ */
1595 extern unkId *Rgco_defmid_op PROTO((struct Sco_defmid *));
1596 #endif /* ! __GNUC__ */
1597
1598 #define gco_defmid_op(xyzxyz) (*Rgco_defmid_op((struct Sco_defmid *) (xyzxyz)))
1599
1600 extern coresyn mkco_dfunid PROTO((unkId, ttype));
1601 #ifdef __GNUC__
1602
1603 extern __inline__ unkId *Rgco_dfunid_c(struct Sco_dfunid *t)
1604 {
1605 #ifdef UGEN_DEBUG
1606         if(t -> tag != co_dfunid)
1607                 fprintf(stderr,"gco_dfunid_c: illegal selection; was %d\n", t -> tag);
1608 #endif /* UGEN_DEBUG */
1609         return(& t -> Xgco_dfunid_c);
1610 }
1611 #else  /* ! __GNUC__ */
1612 extern unkId *Rgco_dfunid_c PROTO((struct Sco_dfunid *));
1613 #endif /* ! __GNUC__ */
1614
1615 #define gco_dfunid_c(xyzxyz) (*Rgco_dfunid_c((struct Sco_dfunid *) (xyzxyz)))
1616 #ifdef __GNUC__
1617
1618 extern __inline__ ttype *Rgco_dfunid_ty(struct Sco_dfunid *t)
1619 {
1620 #ifdef UGEN_DEBUG
1621         if(t -> tag != co_dfunid)
1622                 fprintf(stderr,"gco_dfunid_ty: illegal selection; was %d\n", t -> tag);
1623 #endif /* UGEN_DEBUG */
1624         return(& t -> Xgco_dfunid_ty);
1625 }
1626 #else  /* ! __GNUC__ */
1627 extern ttype *Rgco_dfunid_ty PROTO((struct Sco_dfunid *));
1628 #endif /* ! __GNUC__ */
1629
1630 #define gco_dfunid_ty(xyzxyz) (*Rgco_dfunid_ty((struct Sco_dfunid *) (xyzxyz)))
1631
1632 extern coresyn mkco_constmid PROTO((unkId, unkId, ttype));
1633 #ifdef __GNUC__
1634
1635 extern __inline__ unkId *Rgco_constmid_c(struct Sco_constmid *t)
1636 {
1637 #ifdef UGEN_DEBUG
1638         if(t -> tag != co_constmid)
1639                 fprintf(stderr,"gco_constmid_c: illegal selection; was %d\n", t -> tag);
1640 #endif /* UGEN_DEBUG */
1641         return(& t -> Xgco_constmid_c);
1642 }
1643 #else  /* ! __GNUC__ */
1644 extern unkId *Rgco_constmid_c PROTO((struct Sco_constmid *));
1645 #endif /* ! __GNUC__ */
1646
1647 #define gco_constmid_c(xyzxyz) (*Rgco_constmid_c((struct Sco_constmid *) (xyzxyz)))
1648 #ifdef __GNUC__
1649
1650 extern __inline__ unkId *Rgco_constmid_op(struct Sco_constmid *t)
1651 {
1652 #ifdef UGEN_DEBUG
1653         if(t -> tag != co_constmid)
1654                 fprintf(stderr,"gco_constmid_op: illegal selection; was %d\n", t -> tag);
1655 #endif /* UGEN_DEBUG */
1656         return(& t -> Xgco_constmid_op);
1657 }
1658 #else  /* ! __GNUC__ */
1659 extern unkId *Rgco_constmid_op PROTO((struct Sco_constmid *));
1660 #endif /* ! __GNUC__ */
1661
1662 #define gco_constmid_op(xyzxyz) (*Rgco_constmid_op((struct Sco_constmid *) (xyzxyz)))
1663 #ifdef __GNUC__
1664
1665 extern __inline__ ttype *Rgco_constmid_ty(struct Sco_constmid *t)
1666 {
1667 #ifdef UGEN_DEBUG
1668         if(t -> tag != co_constmid)
1669                 fprintf(stderr,"gco_constmid_ty: illegal selection; was %d\n", t -> tag);
1670 #endif /* UGEN_DEBUG */
1671         return(& t -> Xgco_constmid_ty);
1672 }
1673 #else  /* ! __GNUC__ */
1674 extern ttype *Rgco_constmid_ty PROTO((struct Sco_constmid *));
1675 #endif /* ! __GNUC__ */
1676
1677 #define gco_constmid_ty(xyzxyz) (*Rgco_constmid_ty((struct Sco_constmid *) (xyzxyz)))
1678
1679 extern coresyn mkco_specid PROTO((coresyn, list));
1680 #ifdef __GNUC__
1681
1682 extern __inline__ coresyn *Rgco_specid_un(struct Sco_specid *t)
1683 {
1684 #ifdef UGEN_DEBUG
1685         if(t -> tag != co_specid)
1686                 fprintf(stderr,"gco_specid_un: illegal selection; was %d\n", t -> tag);
1687 #endif /* UGEN_DEBUG */
1688         return(& t -> Xgco_specid_un);
1689 }
1690 #else  /* ! __GNUC__ */
1691 extern coresyn *Rgco_specid_un PROTO((struct Sco_specid *));
1692 #endif /* ! __GNUC__ */
1693
1694 #define gco_specid_un(xyzxyz) (*Rgco_specid_un((struct Sco_specid *) (xyzxyz)))
1695 #ifdef __GNUC__
1696
1697 extern __inline__ list *Rgco_specid_tys(struct Sco_specid *t)
1698 {
1699 #ifdef UGEN_DEBUG
1700         if(t -> tag != co_specid)
1701                 fprintf(stderr,"gco_specid_tys: illegal selection; was %d\n", t -> tag);
1702 #endif /* UGEN_DEBUG */
1703         return(& t -> Xgco_specid_tys);
1704 }
1705 #else  /* ! __GNUC__ */
1706 extern list *Rgco_specid_tys PROTO((struct Sco_specid *));
1707 #endif /* ! __GNUC__ */
1708
1709 #define gco_specid_tys(xyzxyz) (*Rgco_specid_tys((struct Sco_specid *) (xyzxyz)))
1710
1711 extern coresyn mkco_wrkrid PROTO((coresyn));
1712 #ifdef __GNUC__
1713
1714 extern __inline__ coresyn *Rgco_wrkrid_un(struct Sco_wrkrid *t)
1715 {
1716 #ifdef UGEN_DEBUG
1717         if(t -> tag != co_wrkrid)
1718                 fprintf(stderr,"gco_wrkrid_un: illegal selection; was %d\n", t -> tag);
1719 #endif /* UGEN_DEBUG */
1720         return(& t -> Xgco_wrkrid_un);
1721 }
1722 #else  /* ! __GNUC__ */
1723 extern coresyn *Rgco_wrkrid_un PROTO((struct Sco_wrkrid *));
1724 #endif /* ! __GNUC__ */
1725
1726 #define gco_wrkrid_un(xyzxyz) (*Rgco_wrkrid_un((struct Sco_wrkrid *) (xyzxyz)))
1727
1728 #endif