summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authorjilles <jilles@FreeBSD.org>2012-11-11 15:13:24 +0000
committerjilles <jilles@FreeBSD.org>2012-11-11 15:13:24 +0000
commitbe4aea389c2ee2935d4da915a8adff3184296095 (patch)
treefcf3f6690c167a8dd95717a0dc7e850cf9adfe63 /bin
parent551d372a1bddcd79984b86718d69d54076349901 (diff)
downloadFreeBSD-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.c6
-rw-r--r--bin/sh/input.h3
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);
OpenPOWER on IntegriCloud