I have always thought I needed to use local for a Bash function since the args might change from line to line, but you're right, that's really for a multiline shell function (or am I just being paranoid?)