syntax: don't batch-allocate []*Stmt
syntax: don't batch-allocate []*Stmt

With the fairer benchmark, it's clear it's not a net win.
Fewer allocations can be a good thing,
but they aren't the most important metric -
the amount of time and memory used per parse are more important.

name      old time/op    new time/op    delta
Parse-16    39.8µs ± 1%    39.3µs ± 1%   -1.12%  (p=0.015 n=6+6)

name      old alloc/op   new alloc/op   delta
Parse-16    21.0kB ± 0%    19.1kB ± 0%   -8.95%  (p=0.002 n=6+6)

name      old allocs/op  new allocs/op  delta
Parse-16       101 ± 0%       115 ± 0%  +13.86%  (p=0.002 n=6+6)

mvdan/sh,mvdan/sh,mvdan/sh,mvdan/sh