summaryrefslogtreecommitdiff
path: root/testsuite
diff options
context:
space:
mode:
authorDenys Vlasenko2018-01-07 01:19:08 +0100
committerDenys Vlasenko2018-01-07 01:19:08 +0100
commit6f4a785bd1bd0e6973b5c27b34b86655b1d7a602 (patch)
treef7c5acf0f2f844883e5e183b45d85ba0ee5471df /testsuite
parent7367a949a6a81d71d524f0635a212371120df4e0 (diff)
downloadbusybox-6f4a785bd1bd0e6973b5c27b34b86655b1d7a602.zip
busybox-6f4a785bd1bd0e6973b5c27b34b86655b1d7a602.tar.gz
awk: fix 'delete array[var--]' decrementing var twice
function old new delta evaluate 3395 3390 -5 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'testsuite')
-rwxr-xr-xtestsuite/awk.tests19
1 files changed, 19 insertions, 0 deletions
diff --git a/testsuite/awk.tests b/testsuite/awk.tests
index 82937bc..ad0583a 100755
--- a/testsuite/awk.tests
+++ b/testsuite/awk.tests
@@ -261,6 +261,25 @@ end d
" \
"" ""
+prg='
+BEGIN{
+cnt = 0
+a[cnt] = "zeroth"
+a[++cnt] = "first"
+delete a[cnt--]
+print cnt
+print "[0]:" a[0]
+print "[1]:" a[1]
+}'
+testing "awk 'delete a[v--]' evaluates v-- once" \
+ "awk '$prg'" \
+ "\
+0
+[0]:zeroth
+[1]:
+" \
+ "" ""
+
testing "awk handles empty ()" \
"awk 'BEGIN {print()}' 2>&1" "awk: cmd. line:1: Empty sequence\n" "" ""