On 6/14/16 12:16 PM, Dan Douglas wrote: > On Sun, Jun 12, 2016 at 8:33 PM, Chet Ramey <chet.ra...@case.edu> wrote: >> 3. Honor the assignment and delete the nameref variable, creating a new >> one, like bash-4.3: >> >> $ ../bash-4.3-patched/bash ./x1 >> declare -n a="b" >> declare -n b="a[1]" >> declare -a a='([1]="foo")' >> declare -n b="a[1]" > > I kind of like this option because it's consistent with `typeset -n` > meaning "operate directly on the ref variable", and declare together > with assignment meaning "redefine the variable" in most cases. I'm not > so sure a warning is needed since replacing the variable with a new > definition would be the usual thing to do with any other attributes, > and the identifier literals used within one scope should be under > control.
OK, just to play devil's advocate: why discard the existing value, since any attribute other than nameref would result in it being preserved as index 0? Chet -- ``The lyf so short, the craft so long to lerne.'' - Chaucer ``Ars longa, vita brevis'' - Hippocrates Chet Ramey, ITS, CWRU c...@case.edu http://cnswww.cns.cwru.edu/~chet/