1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
fn () { declare -n var=foo; var=bar } unset foo fn echo ${foo:-unset} unset -f fn unset foo fn() { declare -n var; var=foo } fn echo ${foo:-unset}