From 95712e4cd182d9b886d23269c67a0ead52881e9c Mon Sep 17 00:00:00 2001 From: jilles Date: Sat, 9 Apr 2016 21:55:58 +0000 Subject: [PATCH] MFC r259017: test: Avoid looking up again the type of a known binary operator. git-svn-id: svn://svn.freebsd.org/base/stable/10@297767 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f --- bin/test/test.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/bin/test/test.c b/bin/test/test.c index 4662d1544..46e9999eb 100644 --- a/bin/test/test.c +++ b/bin/test/test.c @@ -172,7 +172,7 @@ static char **t_wp; static int parenlevel; static int aexpr(enum token); -static int binop(void); +static int binop(enum token); static int equalf(const char *, const char *); static int filstat(char *, enum token); static int getn(const char *); @@ -312,21 +312,20 @@ primary(enum token n) } } - if (TOKEN_TYPE(t_lex(nargc > 0 ? t_wp[1] : NULL)) == BINOP) - return binop(); + nn = t_lex(nargc > 0 ? t_wp[1] : NULL); + if (TOKEN_TYPE(nn) == BINOP) + return binop(nn); return strlen(*t_wp) > 0; } static int -binop(void) +binop(enum token n) { const char *opnd1, *op, *opnd2; - enum token n; opnd1 = *t_wp; - op = nargc > 0 ? t_wp[1] : NULL; - n = t_lex(nargc > 0 ? (--nargc, *++t_wp) : NULL); + op = nargc > 0 ? (--nargc, *++t_wp) : NULL; if ((opnd2 = nargc > 0 ? (--nargc, *++t_wp) : NULL) == NULL) syntax(op, "argument expected"); -- 2.42.0