引数 $1 が function の中から参照できない
標準では全部グローバルのスコープじゃなかったのか?

グローバル変数に引数をコピーするとグローバル変数は参照できるけど
引数はそういうものなのか?

~/ cat bug.sh
function bug_version {
echo "argument $1 can't handle in function"
}
bug_version
echo "argument $1 can handle out of function"

~/ sh bug.sh arg
argument can't handle in function
argument arg can handle out of function