Path: csiph.com!goblin2!goblin1!goblin.stu.neva.ru!usenet.stanford.edu!not-for-mail From: Grisha Levit Newsgroups: gnu.bash.bug Subject: namerefs and environment variable names with subscripts Date: Tue, 17 Jul 2018 16:44:07 -0400 Lines: 27 Approved: bug-bash@gnu.org Message-ID: NNTP-Posting-Host: lists.gnu.org Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" X-Trace: usenet.stanford.edu 1531860264 18861 208.118.235.17 (17 Jul 2018 20:44:24 GMT) X-Complaints-To: action@cs.stanford.edu To: bug-bash Envelope-to: bug-bash@gnu.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=RCRQE7xdwzzkxzAvEYXmfb4ykgnE21aIzOfNLG2EvYU=; b=U1mujgrZ8ZfE75gFl5Ct2zNi91HY5JrUqz3JFNdIcATwYLwjT5ZbqQf67hb+4Wcxf5 KcgeeVQiMXhIxrqRdWhCMsGAu+X2yCPZtpmcjee5VL00aIdr2mdu6d6GCLF1KGHBu4uK 1vQmYi8UMxfeVnW6DJYy5Jp9hVVdEzmm+eo3aMCkQGm0i5WDRksfkubtEFawhDgpoDCM pkVTrylRiF0VkszhydTRBxl2UPkrr36ftTb3/fuY5sNAS0za0U7d4cLZQnFnC9hBKRSU 3yFL/XQA5QL/hjmb2v9T1wzZpHO7PqijYz+r7Lt1UW5jGvTr21z0K3tbrOeSzpzyvNbj ukOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=RCRQE7xdwzzkxzAvEYXmfb4ykgnE21aIzOfNLG2EvYU=; b=jEl3uQGb3cjFlDO9JgaekqWvW6xt4BtGKPk01c4cl7BChn+B16ALDtlINTgfz9lbf5 hr26gZbCtEq66nTSdjd5f06XuXld6aejxBpa5EmvCXKdDCPpeeHz6Qs7ifxgdCGVhPcC ftrxooRXP98Xqut0S7YTyw9Rsod3569tl5CqCZPMr0rQUaz6TLP5tv8EyFtRs/OvdlOm P+fke15XwUYNYPAKyQlGeMy2sEQ/Yd3CZ5SGBykuuXVBFE7QVcyJWtqJFPqtiW9mVy2c amOAdwQkHy8Ymsant3OrhEGclieCaZCWz8faDTuajMrxs4rmxycp5kG/qJO3kTqnIST+ 87aA== X-Gm-Message-State: AOUpUlFaEtZnWmO7DcavQVmIZr9eBk6UrKQkYIXxEoMDSttCTQLQNu9j jbt0KUzQ1g/x26ILBXQqHHK102VyspBQSUypcE5HJ0rP X-Google-Smtp-Source: AAOMgpekpHRtZJUXPUeifaqDciI7PFlxWMB0472IKbaYX3kuVT6Ds1qEkQ8dpSS0w7oDg6ADKV1mnvz3OPUFpwrXf1Q= X-Received: by 2002:a19:eac1:: with SMTP id y62-v6mr2263842lfi.138.1531860258762; Tue, 17 Jul 2018 13:44:18 -0700 (PDT) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4010:c07::229 X-BeenThere: bug-bash@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Bug reports for the GNU Bourne Again SHell List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Xref: csiph.com gnu.bash.bug:14352 The following commands: declare -n r=v[0] v=(X); r=Y declare -p ${!v*} printf "%s: <%s>\n" "r" "$r" "v" "$v" Will normally produce the following output: declare -a v=([0]="Y") r: v: However, if we start bash with `v[0]' already in the environment, such as with: env 'v[0]=' $BASH The behavior changes, and the output is: declare -a v=([0]="X") declare -x v[0]="Y" r: v: I would expect namerefs to ignore any variables with the literal name `v[0]' in the environment rather than follow them.