summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authorschweikh <schweikh@FreeBSD.org>2003-09-04 18:28:42 +0000
committerschweikh <schweikh@FreeBSD.org>2003-09-04 18:28:42 +0000
commit64b0ace867940f30690ebc2bf4e26fc7235849ee (patch)
tree439da7265f5b255a08b36fdfd9bcdcef2c6b1f2d /bin
parent6b9f5357925a2b2a0a52c190a039a2a375a2e0ad (diff)
downloadFreeBSD-src-64b0ace867940f30690ebc2bf4e26fc7235849ee.zip
FreeBSD-src-64b0ace867940f30690ebc2bf4e26fc7235849ee.tar.gz
Style cleanup, mostly
Requested by: bde
Diffstat (limited to 'bin')
-rw-r--r--bin/sh/arith.h4
-rw-r--r--bin/sh/arith.y339
-rw-r--r--bin/sh/arith_lex.l97
-rw-r--r--bin/sh/shell.h13
4 files changed, 246 insertions, 207 deletions
diff --git a/bin/sh/arith.h b/bin/sh/arith.h
index 45161c1..ab9a848 100644
--- a/bin/sh/arith.h
+++ b/bin/sh/arith.h
@@ -34,6 +34,6 @@
* $FreeBSD$
*/
-int arith_assign(char *, arith_t);
int arith(char *);
-int expcmd(int , char **);
+int arith_assign(char *, arith_t);
+int expcmd(int, char **);
diff --git a/bin/sh/arith.y b/bin/sh/arith.y
index 87a027c..78c7545 100644
--- a/bin/sh/arith.y
+++ b/bin/sh/arith.y
@@ -35,11 +35,12 @@
* SUCH DAMAGE.
*/
-#ifndef lint
#if 0
+#ifndef lint
static char sccsid[] = "@(#)arith.y 8.3 (Berkeley) 5/4/95";
#endif
#endif /* not lint */
+
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
@@ -73,152 +74,187 @@ __FBSDID("$FreeBSD$");
%left ARITH_UNARYMINUS ARITH_UNARYPLUS ARITH_NOT ARITH_BNOT
%%
-exp: expr = {
- return ($1);
- }
+exp:
+ expr
+ { return ($1); }
;
-expr: ARITH_LPAREN expr ARITH_RPAREN = { $$ = $2; }
- | expr ARITH_OR expr = { $$ = $1 ? $1 : $3 ? $3 : 0; }
- | expr ARITH_AND expr = { $$ = $1 ? ( $3 ? $3 : 0 ) : 0; }
- | expr ARITH_BOR expr = { $$ = $1 | $3; }
- | expr ARITH_BXOR expr = { $$ = $1 ^ $3; }
- | expr ARITH_BAND expr = { $$ = $1 & $3; }
- | expr ARITH_EQ expr = { $$ = $1 == $3; }
- | expr ARITH_GT expr = { $$ = $1 > $3; }
- | expr ARITH_GE expr = { $$ = $1 >= $3; }
- | expr ARITH_LT expr = { $$ = $1 < $3; }
- | expr ARITH_LE expr = { $$ = $1 <= $3; }
- | expr ARITH_NE expr = { $$ = $1 != $3; }
- | expr ARITH_LSHIFT expr = { $$ = $1 << $3; }
- | expr ARITH_RSHIFT expr = { $$ = $1 >> $3; }
- | expr ARITH_ADD expr = { $$ = $1 + $3; }
- | expr ARITH_SUB expr = { $$ = $1 - $3; }
- | expr ARITH_MUL expr = { $$ = $1 * $3; }
- | expr ARITH_DIV expr = {
- if ($3 == 0)
- yyerror("division by zero");
- $$ = $1 / $3;
- }
- | expr ARITH_REM expr = {
- if ($3 == 0)
- yyerror("division by zero");
- $$ = $1 % $3;
- }
- | ARITH_NOT expr = { $$ = !($2); }
- | ARITH_BNOT expr = { $$ = ~($2); }
- | ARITH_SUB expr %prec ARITH_UNARYMINUS = { $$ = -($2); }
- | ARITH_ADD expr %prec ARITH_UNARYPLUS = { $$ = $2; }
- | ARITH_NUM
- | ARITH_VAR {
- char *p;
- arith_t arith_val;
- char *str_val;
-
- if (lookupvar($1) == NULL)
- setvarsafe($1, "0", 0);
- str_val = lookupvar($1);
- arith_val = strtoarith_t(str_val, &p, 0);
- /*
- * Conversion is successful only in case
- * we've converted _all_ characters.
- */
- if (*p != '\0')
- yyerror("variable conversion error");
- $$ = arith_val;
- }
- | ARITH_VAR ARITH_ASSIGN expr {
- if (arith_assign($1, $3) != 1)
- yyerror("variable assignment error");
- $$ = $3;
- }
- | ARITH_VAR ARITH_ADDASSIGN expr {
- arith_t value;
-
- value = atoarith_t(lookupvar($1)) + $3;
- if (arith_assign($1, value) != 0)
- yyerror("variable assignment error");
- $$ = value;
- }
- | ARITH_VAR ARITH_SUBASSIGN expr {
- arith_t value;
-
- value = atoarith_t(lookupvar($1)) - $3;
- if (arith_assign($1, value) != 0)
- yyerror("variable assignment error");
- $$ = value;
- }
- | ARITH_VAR ARITH_MULASSIGN expr {
- arith_t value;
-
- value = atoarith_t(lookupvar($1)) * $3;
- if (arith_assign($1, value) != 0)
- yyerror("variable assignment error");
- $$ = value;
- }
- | ARITH_VAR ARITH_DIVASSIGN expr {
- arith_t value;
-
- if ($3 == 0)
- yyerror("division by zero");
-
- value = atoarith_t(lookupvar($1)) / $3;
- if (arith_assign($1, value) != 0)
- yyerror("variable assignment error");
- $$ = value;
- }
- | ARITH_VAR ARITH_REMASSIGN expr {
- arith_t value;
-
- if ($3 == 0)
- yyerror("division by zero");
-
- value = atoarith_t(lookupvar($1)) % $3;
- if (arith_assign($1, value) != 0)
- yyerror("variable assignment error");
- $$ = value;
- }
- | ARITH_VAR ARITH_RSHASSIGN expr {
- arith_t value;
-
- value = atoarith_t(lookupvar($1)) >> $3;
- if (arith_assign($1, value) != 0)
- yyerror("variable assignment error");
- $$ = value;
- }
- | ARITH_VAR ARITH_LSHASSIGN expr {
- arith_t value;
-
- value = atoarith_t(lookupvar($1)) << $3;
- if (arith_assign($1, value) != 0)
- yyerror("variable assignment error");
- $$ = value;
- }
- | ARITH_VAR ARITH_BANDASSIGN expr {
- arith_t value;
-
- value = atoarith_t(lookupvar($1)) & $3;
- if (arith_assign($1, value) != 0)
- yyerror("variable assignment error");
- $$ = value;
- }
- | ARITH_VAR ARITH_BXORASSIGN expr {
- arith_t value;
-
- value = atoarith_t(lookupvar($1)) ^ $3;
- if (arith_assign($1, value) != 0)
- yyerror("variable assignment error");
- $$ = value;
- }
- | ARITH_VAR ARITH_BORASSIGN expr {
- arith_t value;
-
- value = atoarith_t(lookupvar($1)) | $3;
- if (arith_assign($1, value) != 0)
- yyerror("variable assignment error");
- $$ = value;
- }
- ;
+expr:
+ ARITH_LPAREN expr ARITH_RPAREN
+ { $$ = $2; } |
+ expr ARITH_OR expr
+ { $$ = $1 ? $1 : $3 ? $3 : 0; } |
+ expr ARITH_AND expr
+ { $$ = $1 ? ( $3 ? $3 : 0 ) : 0; } |
+ expr ARITH_BOR expr
+ { $$ = $1 | $3; } |
+ expr ARITH_BXOR expr
+ { $$ = $1 ^ $3; } |
+ expr ARITH_BAND expr
+ { $$ = $1 & $3; } |
+ expr ARITH_EQ expr
+ { $$ = $1 == $3; } |
+ expr ARITH_GT expr
+ { $$ = $1 > $3; } |
+ expr ARITH_GE expr
+ { $$ = $1 >= $3; } |
+ expr ARITH_LT expr
+ { $$ = $1 < $3; } |
+ expr ARITH_LE expr
+ { $$ = $1 <= $3; } |
+ expr ARITH_NE expr
+ { $$ = $1 != $3; } |
+ expr ARITH_LSHIFT expr
+ { $$ = $1 << $3; } |
+ expr ARITH_RSHIFT expr
+ { $$ = $1 >> $3; } |
+ expr ARITH_ADD expr
+ { $$ = $1 + $3; } |
+ expr ARITH_SUB expr
+ { $$ = $1 - $3; } |
+ expr ARITH_MUL expr
+ { $$ = $1 * $3; } |
+ expr ARITH_DIV expr
+ {
+ if ($3 == 0)
+ yyerror("division by zero");
+ $$ = $1 / $3;
+ } |
+ expr ARITH_REM expr
+ {
+ if ($3 == 0)
+ yyerror("division by zero");
+ $$ = $1 % $3;
+ } |
+ ARITH_NOT expr
+ { $$ = !($2); } |
+ ARITH_BNOT expr
+ { $$ = ~($2); } |
+ ARITH_SUB expr %prec ARITH_UNARYMINUS
+ { $$ = -($2); } |
+ ARITH_ADD expr %prec ARITH_UNARYPLUS
+ { $$ = $2; } |
+ ARITH_NUM |
+ ARITH_VAR
+ {
+ char *p;
+ arith_t arith_val;
+ char *str_val;
+
+ if (lookupvar($1) == NULL)
+ setvarsafe($1, "0", 0);
+ str_val = lookupvar($1);
+ arith_val = strtoarith_t(str_val, &p, 0);
+ /*
+ * Conversion is successful only in case
+ * we've converted _all_ characters.
+ */
+ if (*p != '\0')
+ yyerror("variable conversion error");
+ $$ = arith_val;
+ } |
+ ARITH_VAR ARITH_ASSIGN expr
+ {
+ if (arith_assign($1, $3) != 1)
+ yyerror("variable assignment error");
+ $$ = $3;
+ } |
+ ARITH_VAR ARITH_ADDASSIGN expr
+ {
+ arith_t value;
+
+ value = atoarith_t(lookupvar($1)) + $3;
+ if (arith_assign($1, value) != 0)
+ yyerror("variable assignment error");
+ $$ = value;
+ } |
+ ARITH_VAR ARITH_SUBASSIGN expr
+ {
+ arith_t value;
+
+ value = atoarith_t(lookupvar($1)) - $3;
+ if (arith_assign($1, value) != 0)
+ yyerror("variable assignment error");
+ $$ = value;
+ } |
+ ARITH_VAR ARITH_MULASSIGN expr
+ {
+ arith_t value;
+
+ value = atoarith_t(lookupvar($1)) * $3;
+ if (arith_assign($1, value) != 0)
+ yyerror("variable assignment error");
+ $$ = value;
+ } |
+ ARITH_VAR ARITH_DIVASSIGN expr
+ {
+ arith_t value;
+
+ if ($3 == 0)
+ yyerror("division by zero");
+
+ value = atoarith_t(lookupvar($1)) / $3;
+ if (arith_assign($1, value) != 0)
+ yyerror("variable assignment error");
+ $$ = value;
+ } |
+ ARITH_VAR ARITH_REMASSIGN expr
+ {
+ arith_t value;
+
+ if ($3 == 0)
+ yyerror("division by zero");
+
+ value = atoarith_t(lookupvar($1)) % $3;
+ if (arith_assign($1, value) != 0)
+ yyerror("variable assignment error");
+ $$ = value;
+ } |
+ ARITH_VAR ARITH_RSHASSIGN expr
+ {
+ arith_t value;
+
+ value = atoarith_t(lookupvar($1)) >> $3;
+ if (arith_assign($1, value) != 0)
+ yyerror("variable assignment error");
+ $$ = value;
+ } |
+ ARITH_VAR ARITH_LSHASSIGN expr
+ {
+ arith_t value;
+
+ value = atoarith_t(lookupvar($1)) << $3;
+ if (arith_assign($1, value) != 0)
+ yyerror("variable assignment error");
+ $$ = value;
+ } |
+ ARITH_VAR ARITH_BANDASSIGN expr
+ {
+ arith_t value;
+
+ value = atoarith_t(lookupvar($1)) & $3;
+ if (arith_assign($1, value) != 0)
+ yyerror("variable assignment error");
+ $$ = value;
+ } |
+ ARITH_VAR ARITH_BXORASSIGN expr
+ {
+ arith_t value;
+
+ value = atoarith_t(lookupvar($1)) ^ $3;
+ if (arith_assign($1, value) != 0)
+ yyerror("variable assignment error");
+ $$ = value;
+ } |
+ ARITH_VAR ARITH_BORASSIGN expr
+ {
+ arith_t value;
+
+ value = atoarith_t(lookupvar($1)) | $3;
+ if (arith_assign($1, value) != 0)
+ yyerror("variable assignment error");
+ $$ = value;
+ } ;
%%
#include "error.h"
#include "output.h"
@@ -233,7 +269,8 @@ int yylex(void);
int yyparse(void);
int
-arith_assign(char *name, arith_t value) {
+arith_assign(char *name, arith_t value)
+{
char *str;
int ret;
@@ -253,10 +290,10 @@ arith(char *s)
INTOFF;
result = yyparse();
- arith_lex_reset(); /* reprime lex */
+ arith_lex_reset(); /* Reprime lex. */
INTON;
- return (result);
+ return result;
}
void
@@ -265,7 +302,7 @@ yyerror(char *s)
yyerrok;
yyclearin;
- arith_lex_reset(); /* reprime lex */
+ arith_lex_reset(); /* Reprime lex. */
error("arithmetic expression: %s: \"%s\"", s, arith_startbuf);
}
@@ -284,7 +321,7 @@ expcmd(int argc, char **argv)
p = argv[1];
if (argc > 2) {
/*
- * concatenate arguments
+ * Concatenate arguments.
*/
STARTSTACKSTR(concat);
ap = argv + 2;
@@ -304,7 +341,7 @@ expcmd(int argc, char **argv)
i = arith(p);
out1fmt("%ld\n", i);
- return (! i);
+ return !i;
}
/*************************/
diff --git a/bin/sh/arith_lex.l b/bin/sh/arith_lex.l
index cad1846..fead625 100644
--- a/bin/sh/arith_lex.l
+++ b/bin/sh/arith_lex.l
@@ -35,19 +35,20 @@
* SUCH DAMAGE.
*/
-#ifndef lint
#if 0
+#ifndef lint
static char sccsid[] = "@(#)arith_lex.l 8.3 (Berkeley) 5/4/95";
#endif
#endif /* not lint */
+
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
#include "shell.h"
#include "y.tab.h"
#include "error.h"
-#include "var.h"
#include "memalloc.h"
+#include "var.h"
extern char *arith_buf, *arith_startbuf;
#undef YY_INPUT
@@ -60,24 +61,23 @@ extern char *arith_buf, *arith_startbuf;
[ \t\n] { ; }
0x[a-fA-F0-9]+ {
- yylval.l_value = strtoarith_t(yytext, NULL, 16);
- return(ARITH_NUM);
+ yylval.l_value = strtoarith_t(yytext, NULL, 16);
+ return ARITH_NUM;
}
-0[0-7]+ {
- yylval.l_value = strtoarith_t(yytext, NULL, 8);
- return(ARITH_NUM);
+0[0-7]+ {
+ yylval.l_value = strtoarith_t(yytext, NULL, 8);
+ return ARITH_NUM;
}
[0-9]+ {
- yylval.l_value = strtoarith_t(yytext, NULL, 10);
- return(ARITH_NUM);
+ yylval.l_value = strtoarith_t(yytext, NULL, 10);
+ return ARITH_NUM;
}
-
[A-Za-z][A-Za-z0-9_]* {
/*
- * If variable doesn't exist, we should initialize
+ * If variable doesn't exist, we should initialize
* it to zero.
*/
char *temp;
@@ -86,46 +86,49 @@ extern char *arith_buf, *arith_startbuf;
temp = (char *)ckmalloc(strlen(yytext) + 1);
yylval.s_value = strcpy(temp, yytext);
- return(ARITH_VAR);
+ return ARITH_VAR;
+ }
+
+"(" { return ARITH_LPAREN; }
+")" { return ARITH_RPAREN; }
+"||" { return ARITH_OR; }
+"&&" { return ARITH_AND; }
+"|" { return ARITH_BOR; }
+"^" { return ARITH_BXOR; }
+"&" { return ARITH_BAND; }
+"==" { return ARITH_EQ; }
+"!=" { return ARITH_NE; }
+">" { return ARITH_GT; }
+">=" { return ARITH_GE; }
+"<" { return ARITH_LT; }
+"<=" { return ARITH_LE; }
+"<<" { return ARITH_LSHIFT; }
+">>" { return ARITH_RSHIFT; }
+"*" { return ARITH_MUL; }
+"/" { return ARITH_DIV; }
+"%" { return ARITH_REM; }
+"+" { return ARITH_ADD; }
+"-" { return ARITH_SUB; }
+"~" { return ARITH_BNOT; }
+"!" { return ARITH_NOT; }
+"=" { return ARITH_ASSIGN; }
+"+=" { return ARITH_ADDASSIGN; }
+"-=" { return ARITH_SUBASSIGN; }
+"*=" { return ARITH_MULASSIGN; }
+"/=" { return ARITH_DIVASSIGN; }
+"%=" { return ARITH_REMASSIGN; }
+">>=" { return ARITH_RSHASSIGN; }
+"<<=" { return ARITH_LSHASSIGN; }
+"&=" { return ARITH_BANDASSIGN; }
+"^=" { return ARITH_BXORASSIGN; }
+"|=" { return ARITH_BORASSIGN; }
+. {
+ error("arith: syntax error: \"%s\"\n", arith_startbuf);
}
-"(" { return(ARITH_LPAREN); }
-")" { return(ARITH_RPAREN); }
-"||" { return(ARITH_OR); }
-"&&" { return(ARITH_AND); }
-"|" { return(ARITH_BOR); }
-"^" { return(ARITH_BXOR); }
-"&" { return(ARITH_BAND); }
-"==" { return(ARITH_EQ); }
-"!=" { return(ARITH_NE); }
-">" { return(ARITH_GT); }
-">=" { return(ARITH_GE); }
-"<" { return(ARITH_LT); }
-"<=" { return(ARITH_LE); }
-"<<" { return(ARITH_LSHIFT); }
-">>" { return(ARITH_RSHIFT); }
-"*" { return(ARITH_MUL); }
-"/" { return(ARITH_DIV); }
-"%" { return(ARITH_REM); }
-"+" { return(ARITH_ADD); }
-"-" { return(ARITH_SUB); }
-"~" { return(ARITH_BNOT); }
-"!" { return(ARITH_NOT); }
-"=" { return(ARITH_ASSIGN); }
-"+=" { return(ARITH_ADDASSIGN); }
-"-=" { return(ARITH_SUBASSIGN); }
-"*=" { return(ARITH_MULASSIGN); }
-"/=" { return(ARITH_DIVASSIGN); }
-"%=" { return(ARITH_REMASSIGN); }
-">>=" { return(ARITH_RSHASSIGN); }
-"<<=" { return(ARITH_LSHASSIGN); }
-"&=" { return(ARITH_BANDASSIGN); }
-"^=" { return(ARITH_BXORASSIGN); }
-"|=" { return(ARITH_BORASSIGN); }
-. { error("arith: syntax error: \"%s\"\n", arith_startbuf); }
%%
void
-arith_lex_reset()
+arith_lex_reset(void)
{
YY_NEW_FILE;
}
diff --git a/bin/sh/shell.h b/bin/sh/shell.h
index eaf2755..f6d8cb7 100644
--- a/bin/sh/shell.h
+++ b/bin/sh/shell.h
@@ -48,28 +48,27 @@
*/
-#define JOBS 1
+#define JOBS 1
/* #define DEBUG 1 */
/*
* Type of used arithmetics. SUSv3 requires us to have at least signed long.
*/
typedef long arith_t;
-#define strtoarith_t(nptr, endptr, base) strtol(nptr, endptr, base)
-#define atoarith_t(arg) strtol(arg, NULL, 0)
-#define ARITH_FORMAT_STR "%ld"
+#define ARITH_FORMAT_STR "%ld"
+#define atoarith_t(arg) strtol(arg, NULL, 0)
+#define strtoarith_t(nptr, endptr, base) strtol(nptr, endptr, base)
typedef void *pointer;
#define STATIC static
-#define MKINIT /* empty */
+#define MKINIT /* empty */
#include <sys/cdefs.h>
extern char nullstr[1]; /* null string */
-
#ifdef DEBUG
-#define TRACE(param) sh_trace param
+#define TRACE(param) sh_trace param
#else
#define TRACE(param)
#endif
OpenPOWER on IntegriCloud