From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3982 invoked by alias); 6 Mar 2018 15:16:52 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: List-Unsubscribe: X-Seq: 42425 Received: (qmail 3890 invoked by uid 1010); 6 Mar 2018 15:16:52 -0000 X-Qmail-Scanner-Diagnostics: from mail-wm0-f47.google.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.99.2/21882. spamassassin: 3.4.1. Clear:RC:0(74.125.82.47):SA:0(-1.9/5.0):. Processed in 1.147426 secs); 06 Mar 2018 15:16:52 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_PASS, T_DKIM_INVALID autolearn=ham autolearn_force=no version=3.4.1 X-Envelope-From: stephane.chazelas@gmail.com X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:subject:message-id:mail-followup-to:mime-version :content-disposition:user-agent; bh=p5eizUR3uMKDo52RLN+KugD681VJiv9ej2epP/dRGCk=; b=OWRB04X7UOL7XcegDCYR55guJm7CfN6KsfIOG5rc+EXfFDyBXfT9knAaEEeB5MOrzk Gt6BF0g78LYZaA6Zwwu7YTTGEiDExkhtrxPv5mKt0QsxbS896AMdohkfCY5qcQXA3qqc 0tXt9Xp9E2M0m8AmHR/e9ADfKIUpn4JSim73jJ/K9H6Xxtu31tf8g6vkpZYPz2mIbDE+ qkiBOnIEeRq8qhK8PSI8dT+PIfzoLLXYvx0IRKT3eEoZxxLvX5zbZNtVWu1n/OR5iPQ2 10OMhfQX2454mWpigbtqO9ZSO35daKsQxGEnGuoirFKeQEkvERXfFVCKKVWtd1SGaq9H 6VkQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:subject:message-id:mail-followup-to :mime-version:content-disposition:user-agent; bh=p5eizUR3uMKDo52RLN+KugD681VJiv9ej2epP/dRGCk=; b=GhlTYBT7eP33KYxNrFZf1sQTp9+RPQiAjvFRZeXJapNmPoHhESbjPoINnxs4NfPbtb rGN61Vef5YGFLpb8mSYcMSZRFoI4pn4N3ny5nLrHO5c+hktFZNPHqLGjTfui2qWGXT0O Yi+oNJKKKkZSSLpMzeC/mYg7EdqF5Na+LCjzWgcslCMxIYFx6AgqwEWAm5WSP823dxvU MbL0SFDDr1nlu/SocG7BrESV2u08i1B9AFWfAfBhyY24sqlTi4vrAtLaApxnRFLYz+AV 65b7SRNd+ANWNIRyultku2IOwK0hU1J/lEAKtbh83U2l3QmtRN/XBSFjdyaZ8IcrV/8R d/QA== X-Gm-Message-State: AElRT7HNUaWNIEqUyvWFX5mJEQFzz/SH+L9NV+lAN/2WnYoAqFcZhgfj wD3WKlz+ND4APwyuaTkQq6gM7A== X-Google-Smtp-Source: AG47ELulFndkdoJoNCgK8i9lgC7fisumtlWLYVXw1dkL9qqp2PtVbrSHEV1A/+ARYeBT4G/hjfebUg== X-Received: by 10.28.88.211 with SMTP id m202mr12791588wmb.160.1520349406567; Tue, 06 Mar 2018 07:16:46 -0800 (PST) Date: Tue, 6 Mar 2018 15:16:44 +0000 From: Stephane Chazelas To: Zsh hackers list Subject: issues with ${array[x][y]} Message-ID: <20180306151644.GA10296@chaz.gmail.com> Mail-Followup-To: Zsh hackers list MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.24 (2015-08-30) $ a=(foo bar) $ x='a[1][1]' $ echo ${(P)x} foo $ echo ${a[1][1]} f There's also a consistency issue in that one can do: string[1]=x and reference ${array[1][1]} but: $ a[1][1]=b zsh: no matches found: a[1][1]=b $ ((a[1][1] = 2)) zsh: bad base syntax $ typeset 'a[1][1]=2' zsh: not an identifier: a[1][1] See also: $ a=(foo bar) $ echo ${a[1][1]-a} f ~$ echo ${a[1][1]::=a} zsh: not an identifier: a[1][1] $ echo ${a[1][1]:=a} f (see how it's happy about a[1][1] for dereferencing, but complains that it's not valid when assigning). zsh 5.4.2 on Debian. Same goes for associative arrays (I was initially checking what would happen with mapfile[file][1,10]=text). -- Stephane