summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2020-12-30 18:31:36 -0500
committerJune McEnroe <june@causal.agency>2020-12-30 18:31:36 -0500
commitb3d41d6df5a1f49ea7f3a2be1279a1c63e2d30fc (patch)
tree1b5996c5ef866eb77ded663c77950d365b6dc038
parentAdd make lexer (diff)
downloadsrc-b3d41d6df5a1f49ea7f3a2be1279a1c63e2d30fc.tar.gz
src-b3d41d6df5a1f49ea7f3a2be1279a1c63e2d30fc.zip
Add postfix $ operator to bit
Diffstat (limited to '')
-rw-r--r--bin/bit.y2
-rw-r--r--bin/man1/bit.17
2 files changed, 8 insertions, 1 deletions
diff --git a/bin/bit.y b/bin/bit.y
index 7843419e..583a0280 100644
--- a/bin/bit.y
+++ b/bin/bit.y
@@ -35,6 +35,7 @@ static uint64_t vars[128];
 
 %}
 
+%left '$'
 %right '='
 %left '|'
 %left '^'
@@ -75,6 +76,7 @@ expr:
 	| expr '^' expr { $$ = $1 ^ $3; }
 	| expr '|' expr { $$ = $1 | $3; }
 	| Var '=' expr { $$ = vars[$1] = $3; }
+	| expr '$' { $$ = $1; }
 	;
 
 %%
diff --git a/bin/man1/bit.1 b/bin/man1/bit.1
index b61bc704..06fd182f 100644
--- a/bin/man1/bit.1
+++ b/bin/man1/bit.1
@@ -1,4 +1,4 @@
-.Dd June 7, 2019
+.Dd December 30, 2020
 .Dt BIT 1
 .Os
 .
@@ -34,6 +34,11 @@ The postfix operators
 .Sy T
 are used as constant multipliers.
 .It
+The postfix operator
+.Sy $
+is of lowest precedence and is equivalent to
+wrapping the preceding expression in parentheses.
+.It
 Single-letter (lower case) variables
 can be assigned.
 The variable