-#define XFREE(cp) { \
- extern char end[]; \
- char stack; \
- if ((cp) >= end && (cp) < &stack) \
- free(cp); \
-}
-char *alloctmp;
-#define xalloc(i) \
- ((alloctmp = malloc(i)) ? alloctmp : (char *)nomem(i))
-#define xrealloc(p, i) \
- ((alloctmp = realloc(p, i)) ? alloctmp : (char *)nomem(i))
-
-char *Dfix1();
-char **blkcat();
-char **blkcpy();
-char **blkend();
-char **blkspl();
-char *calloc();
-char *malloc();
-char *realloc();
-char *cname();
-char **copyblk();
-char **dobackp();
-char *domod();
-struct wordent *dosub();
-char *exp3();
-char *exp3a();
-char *exp4();
-char *exp5();
-char *exp6();
-struct Hist *enthist();
-struct Hist *findev();
-struct wordent *freenod();
-char *getenv();
-char *getinx();
-struct varent *getvx();
-struct passwd *getpwnam();
-struct wordent *gethent();
-struct wordent *getsub();
-char *getwd();
-char **globall();
-char *globone();
-char *index();
-struct biltins *isbfunc();
-off_t lseek();
-char *operate();
-int phup();
-void pintr();
-void pchild();
-char *putn();
-char *rindex();
-char **saveblk();
-char *savestr();
-char *strcat();
-char *strcpy();
-char *strend();
-char *strings();
-char *strip();
-char *strspl();
-char *subword();
-struct command *syntax();
-struct command *syn0();
-struct command *syn1();
-struct command *syn1a();
-struct command *syn1b();
-struct command *syn2();
-struct command *syn3();
-char *value1();
-char *xhome();
-char *xname();
-char *xset();
-
-#define NOSTR ((char *) 0)
+#ifndef SHORT_STRINGS
+#define Strchr(a, b) strchr(a, b)
+#define Strrchr(a, b) strrchr(a, b)
+#define Strcat(a, b) strcat(a, b)
+#define Strncat(a, b, c) strncat(a, b, c)
+#define Strcpy(a, b) strcpy(a, b)
+#define Strncpy(a, b, c) strncpy(a, b, c)
+#define Strlen(a) strlen(a)
+#define Strcmp(a, b) strcmp(a, b)
+#define Strncmp(a, b, c) strncmp(a, b, c)
+
+#define Strspl(a, b) strspl(a, b)
+#define Strsave(a) strsave(a)
+#define Strend(a) strend(a)
+#define Strstr(a, b) strstr(a, b)
+
+#define str2short(a) (a)
+#define blk2short(a) saveblk(a)
+#define short2blk(a) saveblk(a)
+#define short2str(a) strip(a)
+#else
+#define Strchr(a, b) s_strchr(a, b)
+#define Strrchr(a, b) s_strrchr(a, b)
+#define Strcat(a, b) s_strcat(a, b)
+#define Strncat(a, b, c) s_strncat(a, b, c)
+#define Strcpy(a, b) s_strcpy(a, b)
+#define Strncpy(a, b, c) s_strncpy(a, b, c)
+#define Strlen(a) s_strlen(a)
+#define Strcmp(a, b) s_strcmp(a, b)
+#define Strncmp(a, b, c) s_strncmp(a, b, c)
+
+#define Strspl(a, b) s_strspl(a, b)
+#define Strsave(a) s_strsave(a)
+#define Strend(a) s_strend(a)
+#define Strstr(a, b) s_strstr(a, b)
+#endif