Boolean	err;
bool	err;
get_cmd(p, ctxt, err, endc)    const char 	**p;    SymTable 	*ctxt;    Boolean	err;    int		endc	UNUSED;{    VarPattern *pattern;    const char *s;    pattern = (VarPattern *)emalloc(sizeof(VarPattern));    s = *p + 1;    pattern->rhs = NULL;    pattern->lbuffer = VarGetPattern(ctxt, err, &s, '!', '!',    	&pattern->leftLen, NULL);    if (s[-1] == '!') {    	*p = s-1;	return pattern;    }    free_patternarg(pattern);    return NULL;}