rem: t = (struct command *) calloc(1, sizeof (*t));
add: t = (struct command *)xcalloc(1, sizeof (*t));
context: syn2(struct wordent *p1, struct wordent *p2, int flags){	struct wordent *p, *pn;	struct command *t;	int l = 0;	int f;#ifdef TRACE	tprintf("TRACE- syn2()\n");#endif	for (p = p1; p != p2; p = p->next)		switch (p->word[0]) {		case '(':			l++;			continue;		case ')':			l--;			continue;		case '|':			if (l != 0)				continue;			t = (struct command *) calloc(1, sizeof (*t));			f = flags | POUT;			pn = p->next;			if (pn != p2 && pn->word[0] == '&') {				f |= PDIAG;				t->t_dflg |= FDIAG;			}			t->t_dtyp = TFIL;			t->t_dcar = syn3(p1, p, f);			if (pn != p2 && pn->word[0] == '&')				p = pn;			t->t_dcdr = syn2(p->next, p2, flags | PIN);			return (t);		}	return (syn3(p1, p2, flags));}