1 /* 2 * Copyright (c) 1980 Regents of the University of California. 3 * All rights reserved. The Berkeley software License Agreement 4 * specifies the terms and conditions for redistribution. 5 */ 6 7 #ifndef lint 8 static char sccsid[] = "@(#)maketypes.c 5.1 (Berkeley) 06/06/85"; 9 #endif not lint 10 11 /* 12 * make symbols 13 */ 14 15 #include "defs.h" 16 #include "sym.h" 17 #include "symtab.h" 18 #include "sym/btypes.h" 19 #include "sym/classes.h" 20 #include "sym/sym.rep" 21 22 /* 23 * point the basic types in the right direction 24 */ 25 26 maketypes() 27 { 28 t_int = st_lookup(symtab, "integer")->type; 29 t_real = st_lookup(symtab, "real")->type; 30 t_char = st_lookup(symtab, "char")->type; 31 t_boolean = st_lookup(symtab, "boolean")->type; 32 if (t_int==NIL || t_real==NIL || t_char==NIL || t_boolean==NIL) { 33 panic("basic types are missing from namelist"); 34 } 35 } 36 37 /* 38 * enter a keyword in the given table 39 */ 40 41 make_keyword(table, name, tnum) 42 SYMTAB *table; 43 char *name; 44 int tnum; 45 { 46 register SYM *s; 47 48 s = st_insert(table, name); 49 s->class = BADUSE; 50 s->blkno = 0; 51 s->symvalue.token.toknum = tnum; 52 } 53