/*Copyright (C) 1992, 1994 by Thomas Glen Smith. All Rights Reserved.*/
/* functrac APL2 V1.0.0 ************************************************
* Called by funcexef to check for and do tracing. *
***********************************************************************/
#define INCLUDES APLCB+APLCHDEF+APLFUNCI+APLTOKEN+STDIO+TREE
#include "includes.h"
void functrac(fp,trace,stmtno,out)
Aplfunc fp; /* Function definition structure. */
Aplcb trace; /* Trace control vector. */
int stmtno; /* Last statement executed. */
Aplcb out; /* output from current statement */
{
Aplnewl; Funcstop; Quadout;
extern Treelist treehdr;
if (funcstop(trace,stmtno)) {
printf("%s[%d]",fp->funcname->token_ptr.token_string,
stmtno);
aplnewl();
if (out != NULL && treehdr->lastfun != LEFT_ARROW)
out = quadout(out); /* print result */
}
}