xref: /csrg-svn/usr.bin/pascal/pxp/cset.c (revision 62189)
148112Sbostic /*-
2*62189Sbostic  * Copyright (c) 1980, 1993
3*62189Sbostic  *	The Regents of the University of California.  All rights reserved.
448112Sbostic  *
548112Sbostic  * %sccs.include.redist.c%
622226Sdist  */
722226Sdist 
822226Sdist #ifndef lint
9*62189Sbostic static char sccsid[] = "@(#)cset.c	8.1 (Berkeley) 06/06/93";
1048112Sbostic #endif /* not lint */
1122226Sdist 
1222226Sdist /*
132852Speter  * pxp - Pascal execution profiler
142852Speter  *
152852Speter  * Bill Joy UCB
162852Speter  * Version 1.2 January 1979
172852Speter  */
182852Speter 
192852Speter #include "0.h"
202852Speter #include "tree.h"
212852Speter 
222852Speter /*
232852Speter  * Constant sets
242852Speter  */
cset(r)252852Speter cset(r)
262852Speter int *r;
272852Speter {
282852Speter 	register *e, *el;
292852Speter 
302852Speter 	ppbra("[");
312852Speter 	el = r[2];
322852Speter 	if (el != NIL)
332852Speter 		for (;;) {
342852Speter 			e = el[1];
352852Speter 			el = el[2];
362852Speter 			if (e == NIL)
372852Speter 				continue;
382852Speter 			if (e[0] == T_RANG) {
392852Speter 				rvalue(e[1], NIL);
402852Speter 				ppsep("..");
412852Speter 				rvalue(e[2], NIL);
422852Speter 			} else
432852Speter 				rvalue(e, NIL);
442852Speter 			if (el == NIL)
452852Speter 				break;
462852Speter 			ppsep(", ");
472852Speter 		}
482852Speter 	ppket("]");
492852Speter }
50