I was trying the new features of bash 5.1 and came across this inconsistent behavior:
$ foo='1 2' $ declare -A bar=($foo 3) $ declare -p bar declare -A bar=(["\$foo"]="3" ) $ $ bar+=($foo 3) $ declare -p bar declare -A bar=(["\$foo"]="3" ["1 2"]="3" ) Is there a particular reason to avoid performing expansions in `declare -A bar=($foo 3)'? Oğuz