summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--Src/math.c4
-rw-r--r--Test/C01arith.ztst20
3 files changed, 27 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index d7a7ff24b..e1a410ccc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2004-05-13 Peter Stephenson <pws@pwstephenson.fsnet.co.uk>
+
+ * 19941: Src/math.c, Test/C01arith.ztst: (( x, )) triggered
+ an internal bug instead of reporting an error.
+
2004-05-13 Peter Stephenson <pws@csr.com>
* 19936: Functions/Misc/zcalc: bad name for temporary history
diff --git a/Src/math.c b/Src/math.c
index a719ffea5..eb3a768ec 100644
--- a/Src/math.c
+++ b/Src/math.c
@@ -168,8 +168,8 @@ static int prec[TOKCOUNT] =
0, 16, 0
};
-#define TOPPREC 17
-#define ARGPREC (TOPPREC-1)
+#define TOPPREC 18
+#define ARGPREC 16
static int type[TOKCOUNT] =
{
diff --git a/Test/C01arith.ztst b/Test/C01arith.ztst
index d431daae0..bace31ea9 100644
--- a/Test/C01arith.ztst
+++ b/Test/C01arith.ztst
@@ -110,3 +110,23 @@
print $(( ))
0:empty math parse e.g. $(( )) acts like a zero
>0
+
+ print $(( a = ))
+1:empty assignment
+?(eval):1: bad math expression: operand expected at `'
+
+ print $(( 3, ))
+1:empty right hand of comma
+?(eval):1: bad math expression: operand expected at `'
+
+ print $(( 3,,4 ))
+1:empty middle of comma
+?(eval):1: bad math expression: operand expected at `,4 '
+
+ print $(( (3 + 7, 4), 5 ))
+0:commas and parentheses, part 1
+>5
+
+ print $(( 5, (3 + 7, 4) ))
+0:commas and parentheses, part 1
+>4