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