* When the "use strict"; directive is set, constructors called without
`new` will set the execution context to undefined. JSHint tries to be
clever and forces on newcap. Suppress this behaviour, especially
because newcap has gone the way of the dodo.
Initializer code is usually indented and this indentation is carried
over to generated code. This resulted in a piece of indented code in the
middle of the parser.
This commit wraps initializer code in |{...}|, which makes indentation
in generated parsers look a bit more natural.
Also added few missing |hasOwnProperty| calls that JSHint didn't detect
because it only looks whether there is an |if| statement wrapping the
loop body.