hush: fix more obscure ${var%...} cases

function                                             old     new   delta
add_till_closing_paren                               313     359     +46
builtin_exit                                          48      47      -1

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
diff --git a/shell/hush_test/hush-arith/arith.right b/shell/hush_test/hush-arith/arith.right
index 83155fb..718c26a 100644
--- a/shell/hush_test/hush-arith/arith.right
+++ b/shell/hush_test/hush-arith/arith.right
@@ -43,21 +43,30 @@
 4 4
 29 29
 5 5
+unary plus, minus
 -4 -4
 4 4
+conditional expressions
 1 1
 32 32
 32 32
 1 1
 1 1
 32 32
+check that parentheses in `cmd` are interpreted correctly
+3 3
+check that the unevaluated part of the ternary operator does not do evaluation or assignment
 20 20
 30 30
 20 20
 30 30
+check precedence of assignment vs. conditional operator
 hush: error in arithmetic
+check precedence of assignment vs. conditional operator
+associativity of assignment-operator operator
 6 6
 6,5,3 6,5,3
+octal, hex
 263 263
 255 255
 40 40