xref: /original-bsd/usr.bin/pascal/pdx/tree/tree.rep (revision 36940495)
1/*-
2 * Copyright (c) 1982, 1993
3 *	The Regents of the University of California.  All rights reserved.
4 *
5 * %sccs.include.redist.c%
6 *
7 *	@(#)tree.rep	8.1 (Berkeley) 06/06/93
8 */
9
10/*
11 * representation of a parse tree
12 *
13 * This should have a union in it, but unions just don't
14 * seem to work right in C.  I don't want to have to specify an
15 * extra level of referencing, e.g. a.b.c, because there's really
16 * only one level there.
17 */
18
19struct node {
20	OP op;
21	SYM *nodetype;
22	NODE *left, *right;
23	SYM *nameval;
24	long lconval;
25	double fconval;
26	char *sconval;
27	NODE *what, *where, *cond;
28};
29