1*795Speter /* Copyright (c) 1979 Regents of the University of California */
2*795Speter 
3*795Speter static	char sccsid[] = "@(#)yyseman.c 1.1 08/27/80";
4*795Speter 
5*795Speter #include "whoami.h"
6*795Speter #include "0.h"
7*795Speter #include "yy.h"
8*795Speter 
9*795Speter /*
10*795Speter  * Assign semantics to a generated token
11*795Speter  *
12*795Speter  * Most terminals have a semantic value the current
13*795Speter  * input line.  If they are generated they are flagged
14*795Speter  * by having this number negated.
15*795Speter  *
16*795Speter  * The terminals which have true semantics such
17*795Speter  * as identifiers and strings are instead given
18*795Speter  * semantic value NIL here - we do not attempt
19*795Speter  * to do repair, e.g. by giving generated integers
20*795Speter  * the value 1, etc.
21*795Speter  */
22*795Speter nullsem(ch)
23*795Speter 	int ch;
24*795Speter {
25*795Speter 
26*795Speter 	switch (ch) {
27*795Speter 		case YID:
28*795Speter 		case YINT:
29*795Speter 		case YNUMB:
30*795Speter 		case YBINT:
31*795Speter 		case YSTRING:
32*795Speter 			return (NIL);
33*795Speter 		default:
34*795Speter 			return (-yyeline);
35*795Speter 	}
36*795Speter }
37