From 85b0dd71335c8ee6d4925be6b590cbe643edf196 Mon Sep 17 00:00:00 2001
From: Peter Stephenson
Date: Sat, 23 Sep 2017 18:17:51 +0100
Subject: Updates for ksh array element syntax.
Move detection of key/value pairs down into prefork().
Detect normal array assignment and [key]=val array assignemnt
separately. Mark key / value pairs with Marker and pass up flag. Deal
with marked triads specially later on.
---
Test/D04parameter.ztst | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
(limited to 'Test/D04parameter.ztst')
diff --git a/Test/D04parameter.ztst b/Test/D04parameter.ztst
index 367bca120..abac8f7a0 100644
--- a/Test/D04parameter.ztst
+++ b/Test/D04parameter.ztst
@@ -2275,3 +2275,30 @@ F:behavior, see http://austingroupbugs.net/view.php?id=888
>third value
>4fourth element\
>fourth value
+
+ local keyvalarray
+ keyvalarray=(first [2]=second third [6]=sixth seventh [5]=fifth new_sixth)
+ print -l "${keyvalarray[@]}"
+0:mixed syntax [key]=val with normal arrays
+>first
+>second
+>third
+>
+>fifth
+>new_sixth
+>seventh
+
+ local -A keyvalhash
+ keyvalhash=(1 one [2]=two 3 three)
+1:Mixed syntax with [key]=val not allowed for hash.
+?(eval):2: bad [key]=value syntax for associative array
+
+ touch KVA1one KVA2two KVA3three
+ local keyvalarray
+ keyvalarray=(KVA* [4]=*)
+ print -l "${keyvalarray[@]}"
+0:Globbing in non-[key]=val parts of mixed syntax.
+>KVA1one
+>KVA2two
+>KVA3three
+>*
--
cgit 1.4.1