$ var=foo; declare -n ref=var[0]
$ readonly ref
$ declare -p vardeclare -ar var

works even with readonly variables:

$ readonly RO=foo
$ declare -n ref=RO[0]
$ readonly ref
bash: RO: readonly variable
$ declare -p ROdeclare -r RO

presumably they should behave as if they were passed a subscripted variable

$ readonly var[0]
bash: readonly: `var[0]': not a valid identifier

​

Reply via email to