xref: /csrg-svn/usr.bin/pascal/pdx/tree/tree.rep (revision 62163)
148069Sbostic/*-
2*62163Sbostic * Copyright (c) 1982, 1993
3*62163Sbostic *	The Regents of the University of California.  All rights reserved.
422775Smckusick *
548069Sbostic * %sccs.include.redist.c%
648069Sbostic *
7*62163Sbostic *	@(#)tree.rep	8.1 (Berkeley) 06/06/93
822773Smckusick */
95541Slinton
105541Slinton/*
115541Slinton * representation of a parse tree
125541Slinton *
135541Slinton * This should have a union in it, but unions just don't
145541Slinton * seem to work right in C.  I don't want to have to specify an
155541Slinton * extra level of referencing, e.g. a.b.c, because there's really
165541Slinton * only one level there.
175541Slinton */
185541Slinton
195541Slintonstruct node {
205541Slinton	OP op;
215541Slinton	SYM *nodetype;
225541Slinton	NODE *left, *right;
235541Slinton	SYM *nameval;
245541Slinton	long lconval;
255541Slinton	double fconval;
265541Slinton	char *sconval;
275541Slinton	NODE *what, *where, *cond;
285541Slinton};
29