diff options
author | jilles <jilles@FreeBSD.org> | 2012-11-11 15:13:24 +0000 |
---|---|---|
committer | jilles <jilles@FreeBSD.org> | 2012-11-11 15:13:24 +0000 |
commit | be4aea389c2ee2935d4da915a8adff3184296095 (patch) | |
tree | fcf3f6690c167a8dd95717a0dc7e850cf9adfe63 /bin | |
parent | 551d372a1bddcd79984b86718d69d54076349901 (diff) | |
download | FreeBSD-src-be4aea389c2ee2935d4da915a8adff3184296095.zip FreeBSD-src-be4aea389c2ee2935d4da915a8adff3184296095.tar.gz |
sh: Forward-declare struct alias instead of giving up type safety via void *
Diffstat (limited to 'bin')
-rw-r--r-- | bin/sh/input.c | 6 | ||||
-rw-r--r-- | bin/sh/input.h | 3 |
2 files changed, 5 insertions, 4 deletions
diff --git a/bin/sh/input.c b/bin/sh/input.c index 12f285f..b1f0475 100644 --- a/bin/sh/input.c +++ b/bin/sh/input.c @@ -350,7 +350,7 @@ pungetc(void) * We handle aliases this way. */ void -pushstring(char *s, int len, void *ap) +pushstring(char *s, int len, struct alias *ap) { struct strpush *sp; @@ -365,9 +365,9 @@ pushstring(char *s, int len, void *ap) sp->prevstring = parsenextc; sp->prevnleft = parsenleft; sp->prevlleft = parselleft; - sp->ap = (struct alias *)ap; + sp->ap = ap; if (ap) - ((struct alias *)ap)->flag |= ALIASINUSE; + ap->flag |= ALIASINUSE; parsenextc = s; parsenleft = len; INTON; diff --git a/bin/sh/input.h b/bin/sh/input.h index 92aba45..38be609 100644 --- a/bin/sh/input.h +++ b/bin/sh/input.h @@ -45,6 +45,7 @@ extern int parsenleft; /* number of characters left in input buffer */ extern char *parsenextc; /* next character in input buffer */ extern int init_editline; /* 0 == not setup, 1 == OK, -1 == failed */ +struct alias; struct parsefile; char *pfgets(char *, int); @@ -52,7 +53,7 @@ int pgetc(void); int preadbuffer(void); int preadateof(void); void pungetc(void); -void pushstring(char *, int, void *); +void pushstring(char *, int, struct alias *); void setinputfile(const char *, int); void setinputfd(int, int); void setinputstring(char *, int); |