Lines Matching refs:fp
260 TFILE *fp; in showtree() local
262 if ((fp = tracetfile) == NULL) in showtree()
265 trace_puts("showtree(", fp); in showtree()
267 trace_puts("NULL", fp); in showtree()
269 trace_puts("NEOF", fp); in showtree()
272 trace_puts(") called\n", fp); in showtree()
274 shtree(n, 1, 1, 1, fp); in showtree()
303 trlinelen(TFILE * fp) in trlinelen() argument
305 return fp->llen; in trlinelen()
309 shtree(union node *n, int ind, int ilvl, int nl, TFILE *fp) in shtree() argument
316 trace_putc('\n', fp); in shtree()
320 indent(ind, fp); in shtree()
331 shtree(n->nbinary.ch1, 0, ilvl, 0, fp); in shtree()
333 trace_puts(s, fp); in shtree()
334 if (trlinelen(fp) >= TR_STD_WIDTH) { in shtree()
335 trace_putc('\n', fp); in shtree()
336 indent(ind < 0 ? 2 : ind + 1, fp); in shtree()
338 if (fp->lastc != '&') in shtree()
339 trace_puts("; ", fp); in shtree()
341 trace_putc(' ', fp); in shtree()
343 shtree(n->nbinary.ch2, 0, ilvl, nl, fp); in shtree()
346 shcmd(n, fp); in shtree()
348 trace_puts(" &", fp); in shtree()
349 if (nl && trlinelen(fp) > 0) in shtree()
350 trace_putc('\n', fp); in shtree()
354 shtree(lp->n, 0, ilvl, 0, fp); in shtree()
356 trace_puts(" |", fp); in shtree()
357 if (trlinelen(fp) >= TR_STD_WIDTH) { in shtree()
358 trace_putc('\n', fp); in shtree()
359 indent((ind < 0 ? ilvl : ind) + 1, fp); in shtree()
361 trace_putc(' ', fp); in shtree()
365 trace_puts(" &", fp); in shtree()
366 if (nl || trlinelen(fp) >= TR_STD_WIDTH) in shtree()
367 trace_putc('\n', fp); in shtree()
371 shsubsh(n, fp); in shtree()
373 trace_puts(" &", fp); in shtree()
374 if (nl && trlinelen(fp) > 0) in shtree()
375 trace_putc('\n', fp); in shtree()
378 trace_puts(n->narg.text, fp); in shtree()
379 trace_puts("() {\n", fp); in shtree()
380 indent(ind, fp); in shtree()
381 shtree(n->narg.next, (ind < 0 ? ilvl : ind) + 1, ilvl+1, 1, fp); in shtree()
382 indent(ind, fp); in shtree()
383 trace_puts("}\n", fp); in shtree()
386 trace_puts("! ", fp); in shtree()
389 trace_puts("! ", fp); in shtree()
390 shtree(n->nnot.com, -1, ilvl, nl, fp); in shtree()
393 shtree(n->nredir.n, -1, ilvl, 0, fp); in shtree()
394 shredir(n->nredir.redirect, fp, n->nredir.n == NULL); in shtree()
396 trace_putc('\n', fp); in shtree()
401 trace_puts("if ", fp); in shtree()
402 shtree(n->nif.test, -1, ilvl, 0, fp); in shtree()
403 if (trlinelen(fp) > 0 && trlinelen(fp) < TR_STD_WIDTH) { in shtree()
404 if (fp->lastc != '&') in shtree()
405 trace_puts(" ;", fp); in shtree()
407 indent(ilvl, fp); in shtree()
408 trace_puts(" then ", fp); in shtree()
409 if (nl || trlinelen(fp) > TR_STD_WIDTH - 24) in shtree()
410 indent(ilvl+1, fp); in shtree()
411 shtree(n->nif.ifpart, -1, ilvl + 1, 0, fp); in shtree()
412 if (trlinelen(fp) > 0 && trlinelen(fp) < TR_STD_WIDTH) { in shtree()
413 if (fp->lastc != '&') in shtree()
414 trace_puts(" ;", fp); in shtree()
416 indent(ilvl, fp); in shtree()
418 if (nl || trlinelen(fp) > TR_STD_WIDTH - 24) in shtree()
419 indent(ilvl, fp); in shtree()
421 trace_puts(" el", fp); in shtree()
425 if (nl || trlinelen(fp) > TR_STD_WIDTH - 24) in shtree()
426 indent(ilvl+1, fp); in shtree()
427 trace_puts(" else ", fp); in shtree()
428 shtree(n->nif.elsepart, -1, ilvl + 1, 0, fp); in shtree()
429 if (fp->lastc != '&') in shtree()
430 trace_puts(" ;", fp); in shtree()
432 trace_puts(" fi", fp); in shtree()
434 trace_putc('\n', fp); in shtree()
438 trace_puts("while ", fp); in shtree()
441 trace_puts("until ", fp); in shtree()
443 shtree(n->nbinary.ch1, -1, ilvl, 0, fp); in shtree()
444 if (trlinelen(fp) > 0 && trlinelen(fp) < TR_STD_WIDTH) { in shtree()
445 if (fp->lastc != '&') in shtree()
446 trace_puts(" ;", fp); in shtree()
448 trace_putc('\n', fp); in shtree()
449 trace_puts(" do ", fp); in shtree()
450 shtree(n->nbinary.ch1, -1, ilvl + 1, 1, fp); in shtree()
451 trace_puts(" done ", fp); in shtree()
453 trace_putc('\n', fp); in shtree()
457 trace_puts("for ", fp); in shtree()
458 trace_puts(n->nfor.var, fp); in shtree()
462 trace_puts(" in ", fp); in shtree()
464 sharg(argp, fp); in shtree()
465 trace_putc(' ', fp); in shtree()
467 if (trlinelen(fp) > 0 && trlinelen(fp) < TR_STD_WIDTH) { in shtree()
468 if (fp->lastc != '&') in shtree()
469 trace_putc(';', fp); in shtree()
471 trace_putc('\n', fp); in shtree()
473 trace_puts(" do ", fp); in shtree()
474 shtree(n->nfor.body, -1, ilvl + 1, 0, fp); in shtree()
475 if (fp->lastc != '&') in shtree()
476 trace_putc(';', fp); in shtree()
477 trace_puts(" done", fp); in shtree()
479 trace_putc('\n', fp); in shtree()
483 trace_puts("case ", fp); in shtree()
484 sharg(n->ncase.expr, fp); in shtree()
485 trace_puts(" in", fp); in shtree()
487 trace_putc('\n', fp); in shtree()
494 if (nl || trlinelen(fp) > TR_STD_WIDTH - 16) in shtree()
495 indent(ilvl, fp); in shtree()
497 trace_putc(' ', fp); in shtree()
498 trace_putc('(', fp); in shtree()
501 trace_putc(' ', fp); in shtree()
502 sharg(patp, fp); in shtree()
503 trace_putc(' ', fp); in shtree()
505 trace_putc('|', fp); in shtree()
507 trace_putc(')', fp); in shtree()
509 indent(ilvl + 1, fp); in shtree()
511 trace_putc(' ', fp); in shtree()
512 shtree(cp->nclist.body, -1, ilvl+2, 0, fp); in shtree()
514 trace_puts(" ;&", fp); in shtree()
516 trace_puts(" ;;", fp); in shtree()
518 trace_putc('\n', fp); in shtree()
522 trace_putc('\n', fp); in shtree()
523 indent(ind, fp); in shtree()
525 trace_putc(' ', fp); in shtree()
526 trace_puts("esac", fp); in shtree()
528 trace_putc('\n', fp); in shtree()
536 trace_puts(str, fp); in shtree()
539 trace_putc('\n', fp); in shtree()
547 shcmd(union node *cmd, TFILE *fp) in shcmd() argument
555 trace_putc(' ', fp); in shcmd()
556 sharg(np, fp); in shcmd()
559 shredir(cmd->ncmd.redirect, fp, first); in shcmd()
563 shsubsh(union node *cmd, TFILE *fp) in shsubsh() argument
565 trace_puts(" ( ", fp); in shsubsh()
566 shtree(cmd->nredir.n, -1, 3, 0, fp); in shsubsh()
567 trace_puts(" ) ", fp); in shsubsh()
568 shredir(cmd->ncmd.redirect, fp, 1); in shsubsh()
572 shredir(union node *np, TFILE *fp, int first) in shredir() argument
580 trace_putc(' ', fp); in shredir()
595 trace_puts(buf, fp); in shredir()
597 trace_puts(s, fp); in shredir()
600 sharg(np->ndup.vname, fp); in shredir()
603 trace_puts("-", fp); in shredir()
606 trace_puts(buf, fp); in shredir()
612 trace_putc('\\', fp); in shredir()
613 trace_puts("!!!\n", fp); in shredir()
621 trace_puts(s, fp); in shredir()
622 trace_puts("!!! ", fp); in shredir()
624 sharg(np->nfile.fname, fp); in shredir()
631 sharg(union node *arg, TFILE *fp) in sharg() argument
640 trace_puts(s, fp); in sharg()
649 trace_putc('\\', fp); in sharg()
650 trace_putc(*++p, fp); in sharg()
654 trace_putc('\\', fp); in sharg()
655 trace_putc('\n', fp); in sharg()
661 trace_putc('"', fp); in sharg()
662 trace_putc('$', fp); in sharg()
663 trace_putc('{', fp); /*}*/ in sharg()
665 trace_putc('#', fp); in sharg()
667 trace_puts("LINENO=", fp); in sharg()
670 trace_putc(*p, fp); in sharg()
673 trace_putc(':', fp); in sharg()
678 trace_putc('}', fp); in sharg()
680 trace_putc('"', fp); in sharg()
683 trace_putc('-', fp); in sharg()
686 trace_putc('+', fp); in sharg()
689 trace_putc('?', fp); in sharg()
692 trace_putc('=', fp); in sharg()
695 trace_putc('#', fp); in sharg()
698 trace_putc('#', fp); in sharg()
701 trace_putc('%', fp); in sharg()
704 trace_putc('%', fp); in sharg()
713 trace_puts(str, fp); in sharg()
720 trace_putc('}', fp); in sharg()
722 trace_putc('"', fp); in sharg()
728 trace_putc('"', fp); in sharg()
731 trace_putc('$', fp); in sharg()
732 trace_putc('(', fp); in sharg()
734 shtree(bqlist->n, -1, 3, 0, fp); in sharg()
737 trace_puts("???", fp); in sharg()
738 trace_putc(')', fp); in sharg()
740 trace_putc('"', fp); in sharg()
745 trace_putc('"', fp); in sharg()
750 trace_putc('"', fp); in sharg()
756 trace_puts("$(( ", fp); in sharg()
759 trace_puts(" ))", fp); in sharg()
764 trace_putc('\\', fp); in sharg()
765 trace_putc(*p, fp); in sharg()
770 trace_putc('"', fp); in sharg()
775 indent(int amount, TFILE *fp) in indent() argument
784 i = trlinelen(fp); in indent()
785 fp->supr = SUP_NL; in indent()
787 trace_putc('\n', fp); in indent()
790 fp->supr = 0; in indent()
792 trace_putc('\t', fp); in indent()
796 trace_putc(' ', fp); in indent()
799 fp->supr = SUP_WSP; in indent()
803 trace_putc(char c, TFILE *fp) in trace_putc() argument
809 if (debug == 0 || fp == NULL) in trace_putc()
812 if (fp->llen == 0) { in trace_putc()
813 if (fp->blen != 0) in trace_putc()
816 if ((fp->supr & SUP_NL) && c == '\n') in trace_putc()
818 if ((fp->supr & (SUP_WSP|SUP_SP)) && c == ' ') in trace_putc()
820 if ((fp->supr & SUP_WSP) && c == '\t') in trace_putc()
823 if (fp->nxtiov >= TR_IOVECS - 1) /* should be rare */ in trace_putc()
824 trace_flush(fp, 0); in trace_putc()
826 p = trace_id(fp); in trace_putc()
828 fp->lines[fp->nxtiov].iov_base = p; in trace_putc()
829 fp->lines[fp->nxtiov].iov_len = strlen(p); in trace_putc()
830 fp->nxtiov++; in trace_putc()
832 } else if (fp->blen && fp->blen >= fp->lines[fp->nxtiov].iov_len) { in trace_putc()
833 fp->blen = 0; in trace_putc()
834 if (++fp->nxtiov >= TR_IOVECS) in trace_putc()
835 trace_flush(fp, 0); in trace_putc()
838 if (fp->lines[fp->nxtiov].iov_len == 0) { in trace_putc()
841 trace_flush(fp, 1); in trace_putc()
846 fp->lines[fp->nxtiov].iov_base = p; in trace_putc()
847 fp->lines[fp->nxtiov].iov_len = 2 * TR_STD_WIDTH; in trace_putc()
848 fp->blen = 0; in trace_putc()
851 p = (char *)fp->lines[fp->nxtiov].iov_base + fp->blen++; in trace_putc()
856 fp->lastc = c; in trace_putc()
857 fp->supr = 0; in trace_putc()
861 fp->lines[fp->nxtiov++].iov_len = fp->blen; in trace_putc()
862 fp->blen = 0; in trace_putc()
863 fp->llen = 0; in trace_putc()
864 fp->supr |= SUP_NL; in trace_putc()
869 fp->llen |= 7; in trace_putc()
870 fp->llen++; in trace_putc()
874 trace_flush(TFILE *fp, int all) in trace_flush() argument
879 niov = fp->nxtiov; in trace_flush()
880 if (all && fp->blen > 0) { in trace_flush()
881 fp->lines[niov].iov_len = fp->blen; in trace_flush()
882 fp->blen = 0; in trace_flush()
883 fp->llen = 0; in trace_flush()
888 if (fp->blen > 0 && --niov == 0) in trace_flush()
890 written = writev(fp->tfd, fp->lines, niov); in trace_flush()
892 free(fp->lines[i].iov_base); in trace_flush()
893 fp->lines[i].iov_base = NULL; in trace_flush()
894 fp->lines[i].iov_len = 0; in trace_flush()
897 if (fp->blen > 0) { in trace_flush()
898 free(fp->lines[niov].iov_base); in trace_flush()
899 fp->lines[niov].iov_base = NULL; in trace_flush()
900 fp->lines[niov].iov_len = 0; in trace_flush()
903 fp->blen = 0; in trace_flush()
904 fp->llen = 0; in trace_flush()
907 if (fp->blen > 0) { in trace_flush()
908 fp->lines[0].iov_base = fp->lines[niov].iov_base; in trace_flush()
909 fp->lines[0].iov_len = fp->lines[niov].iov_len; in trace_flush()
910 fp->lines[niov].iov_base = NULL; in trace_flush()
911 fp->lines[niov].iov_len = 0; in trace_flush()
913 fp->nxtiov = 0; in trace_flush()
917 trace_puts(const char *s, TFILE *fp) in trace_puts() argument
922 trace_putc(c, fp); in trace_puts()
997 TFILE *fp; in trstring() local
1001 fp = tracetfile; in trstring()
1002 trace_putc('"', fp); in trstring()
1015 backslash: trace_putc('\\', fp); in trstring()
1016 trace_putc(c, fp); in trstring()
1020 trace_putc(*p, fp); in trstring()
1022 trace_putc('\\', fp); in trstring()
1023 trace_putc(*p >> 6 & 03, fp); in trstring()
1024 trace_putc(*p >> 3 & 07, fp); in trstring()
1025 trace_putc(*p & 07, fp); in trstring()
1030 trace_putc('"', fp); in trstring()