Annotation of 43BSDReno/pgrm/pascal/pxp/call.c, revision 1.1.1.1

1.1       root        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[] = "@(#)call.c     5.1 (Berkeley) 6/5/85";
                      9: #endif not lint
                     10: 
                     11: #
                     12: /*
                     13:  * pxp - Pascal execution profiler
                     14:  *
                     15:  * Bill Joy UCB
                     16:  * Version 1.2 January 1979
                     17:  */
                     18: 
                     19: #include "0.h"
                     20: #include "tree.h"
                     21: 
                     22: /*
                     23:  * Procedure or function call
                     24:  */
                     25: call(p, argv)
                     26:        register int *argv;
                     27: {
                     28:        register *al;
                     29: 
                     30:        ppid(p);
                     31:        if (argv != NIL) {
                     32:                ppbra("(("+1);  /* xaproposstrange
 */
                     33:                for (;;) {
                     34:                        al = argv[1];
                     35:                        if (al[0] == T_WEXP) {
                     36:                                rvalue(al[1], NIL);
                     37:                                if (al[2] != NIL) {
                     38:                                        ppsep(": ");
                     39:                                        rvalue(al[2], NIL);
                     40:                                }
                     41:                                if (al[3] == OCT || al[3] == HEX) {
                     42:                                        ppspac();
                     43:                                        ppkw(al[3] == OCT ? "oct" : "hex");
                     44:                                } else if (al[3] != NIL) {
                     45:                                        ppsep(": ");
                     46:                                        rvalue(al[3], NIL);
                     47:                                }
                     48:                        } else
                     49:                                rvalue(argv[1], NIL);
                     50:                        argv = argv[2];
                     51:                        if (argv == NIL)
                     52:                                break;
                     53:                        ppsep(", ");
                     54:                }
                     55:                ppket(")");
                     56:        }
                     57: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.