Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > gnu.bash.bug > #14458 > unrolled thread
| Started by | Grisha Levit <grishalevit@gmail.com> |
|---|---|
| First post | 2018-08-06 22:13 -0400 |
| Last post | 2018-08-06 22:13 -0400 |
| Articles | 1 — 1 participant |
Back to article view | Back to gnu.bash.bug
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: delcare -a on a nameref in a function modifies nameref instead of target Grisha Levit <grishalevit@gmail.com> - 2018-08-06 22:13 -0400
| From | Grisha Levit <grishalevit@gmail.com> |
|---|---|
| Date | 2018-08-06 22:13 -0400 |
| Subject | Re: delcare -a on a nameref in a function modifies nameref instead of target |
| Message-ID | <mailman.4781.1533608054.1292.bug-bash@gnu.org> |
A few more problematic test cases in this vein (tested against latest
devel snapshot 20180803).
f() { local -n ref=var; local -A ref=([1]=); ref=([2]=); declare -p ref var; }
unset ref var; f
# declare -An ref=()
# declare -A var=([1]="" )
declare -p ref
# declare -a ref=([2]="")
unset ref; var=0; f
# declare -An ref=([1]="" )
# declare -- var="0"
declare -p ref
# declare -a ref=([2]="")
f() { local -n ref=var; local -a ref=([1]=); ref=([2]=); declare -p ref var; }
unset ref var; f
# declare -an ref=()
# declare -a var=([1]="")
declare -p ref
# declare -a ref=([2]="")
unset ref; var=0; f
# declare -an ref=([1]="")
# declare -- var="0"
declare -p ref
# declare -a ref=([2]="")
# same issues for `local -[iluctrx] ref=...'
f() { local -n ref=var; local -i ref=([1]=); declare -p ref var; }
unset var; f
# declare -in ref="var"
# declare -ai var=([1]="0")
var=0; f
# declare -in ref="var"
# declare -a var=([1]="")
# same issue for `local -[ilucAa] ref=...'
f() { local -n ref=var; local ref=1; declare -p ref var; }; var=0; f
var=0; f
# bash: local: `1': invalid variable name for name reference
# declare -n ref="var"
# declare -- var="0"
Back to top | Article view | gnu.bash.bug
csiph-web