|
|
1.1 root 1: #include "e.h"
2: #include "y.tab.h"
3:
4: extern int Funnyps;
5: extern double Funnyht, Funnybase;
6:
7: void funny(int n)
8: {
9: char *f;
10:
11: yyval = salloc();
12: switch (n) {
13: case SUM:
14: f = lookup(deftbl, "sum_def")->cval; break;
15: case UNION:
16: f = lookup(deftbl, "union_def")->cval; break;
17: case INTER: /* intersection */
18: f = lookup(deftbl, "inter_def")->cval; break;
19: case PROD:
20: f = lookup(deftbl, "prod_def")->cval; break;
21: default:
22: ERROR "funny type %d in funny", n FATAL;
23: }
24: printf(".ds %d %s\n", yyval, f);
25: eht[yyval] = EM(1.0, ps+Funnyps) - EM(Funnyht, ps);
26: ebase[yyval] = EM(Funnybase, ps);
27: dprintf(".\tS%d <- %s; h=%g b=%g\n",
28: yyval, f, eht[yyval], ebase[yyval]);
29: lfont[yyval] = rfont[yyval] = ROM;
30: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.