4.1cBSD/usr/src/ucb/pascal/pdx/tree/tree.rep

/* Copyright (c) 1982 Regents of the University of California */

/* static char sccsid[] = "@(#)tree.rep 1.2 1/18/82"; */

/*
 * representation of a parse tree
 *
 * This should have a union in it, but unions just don't
 * seem to work right in C.  I don't want to have to specify an
 * extra level of referencing, e.g. a.b.c, because there's really
 * only one level there.
 */

struct node {
	OP op;
	SYM *nodetype;
	NODE *left, *right;
	SYM *nameval;
	long lconval;
	double fconval;
	char *sconval;
	NODE *what, *where, *cond;
};