Assign the first block argument named "_" on 1.9

On 1.9, block arguments named "_" are treated as completely separate
and renamed to "_0", "_1" etc behind the scenes.

Previously, accessing the value of the "_" variable inside the body of
the block would treat it as a previously-undeclared local variable,
which would have nil value.

To make "_" resolve to the first argument named "_", we simply avoid
renaming the first argument to "_0".

Fixes #1697