The scope of a local variable is its routine. A local variable is created
on entry to the routine and destroyed on exit from the routine. If a local
variable is passed as an argument, then its value can be used in its own
routine and in the called routine, so its use scope is its own routine
and the routine that receives it. Because the value of an argument cannot
be changed, its set scope is always its routine.