void prefork DCLPROTO((Lklist list,int flags));
void postfork DCLPROTO((Lklist list,int flags));
void singsub DCLPROTO((char **s));
void filesub DCLPROTO((char **namptr,int assign));
int filesubstr DCLPROTO((char **namptr,int assign));
char *getnamedir DCLPROTO((char *user,int len));
void commsubst DCLPROTO((Lklist l,Lknode n,char *str3,char *str,int qt));
void strcatsub DCLPROTO((char *dest,char *src,int globsubst));
int strpcmp DCLPROTO((const void *a,const void *b));
int invstrpcmp DCLPROTO((const void *a,const void *b));
int cstrpcmp DCLPROTO((const void *a,const void *b));
int invcstrpcmp DCLPROTO((const void *a,const void *b));
char *dopadding DCLPROTO((char *str,int prenum,int postnum,char *preone,char *postone,char *premul,char *postmul));
char *get_strarg DCLPROTO((char *s));
int paramsubst DCLPROTO((Lklist l,Lknode n,char *aptr,char *bptr,int qt,				/* if bit 0 set, real quote, else single word substitution */int sp));
void arithsubst DCLPROTO((vptr *aptr,char **bptr));
void modify DCLPROTO((char **str,char **ptr));
char *dstackent DCLPROTO((int val));
struct alias *mkanode DCLPROTO((char *txt,int cmflag));
