bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: a == a[0] convention


From: Grisha Levit
Subject: Re: a == a[0] convention
Date: Thu, 2 Jun 2016 13:18:12 -0400

I think all of the stuff here is fixed in the latest devel snapshot, though there is definitely weirdness if you run the assignments as a typeset command.  I hadn't even tried the ref4 case, which gives the weirdest results when used with typeset/declare: https://groups.google.com/forum/#!topic/gnu.bash.bug/Z-lf3KEnZ34

bash -xc '
    typeset -n ref1=a1 ref2=a2 ref3=a3[0] ref4=a4[0]
    ref1=foo ref2[0]=foo ref3=foo ref4[0]=foo
    echo "${ref1} ${ref2[0]} ${ref3} ${ref4[0]}"
    typeset -p {ref,a}{1,2,3,4}'
+ typeset -n ref1=a1 ref2=a2 'ref3=a3[0]' 'ref4=a4[0]'
+ ref1=foo
+ ref2[0]=foo
+ ref3=foo
+ ref4[0]=foo
bash: line 2: `a4[0]': not a valid identifier
+ echo 'foo foo foo '
foo foo foo
+ typeset -p ref1 ref2 ref3 ref4 a1 a2 a3 a4
declare -n ref1="a1"
declare -n ref2="a2"
declare -n ref3="a3[0]"
declare -n ref4="a4[0]"
declare -- a1="foo"
declare -a a2=([0]="foo")
declare -a a3=([0]="foo")
bash: line 4: typeset: a4: not found


bash -c 'typeset -n ref[0]=foo'
bash: line 0: typeset: ref[0]: reference variable cannot be an array

reply via email to

[Prev in Thread] Current Thread [Next in Thread]