Why does Snippet A
echo "params are ${FUNCNAME[@]}; param count is ${#FUNCNAME[@]}"
return
params are main; param count is 0
But Snippet B
_foo(){
echo "params are ${FUNCNAME[@]}; param count is ${#FUNCNAME[@]}"
}
echo $(_foo)
return
params are _foo main; param count is 2
For Snippet A, shouldn't param count be 1, instead of 0?