I have just committed (in r59883) some changes to the R parser based on
Romain Francois' parser package. Packages that made use of parser will
hopefully find that the information in base R gives them what they need
to work with, but the data is not identical to
what parser recorded (since it was not consistent with some things
already in R). One reason for the change was that the parser in the
parser package was slightly different than the one in R; the hope is
that by providing the services in R, it will make maintenance easier for
things like code analysis, pretty printing, etc.
See ?getParseData for details, and if you are maintaining a package that
depends on parser, feel free to ask me for help in the transition, or
make suggestions for changes if I've done something that causes you too
P.S. to Qiang Li: as mentioned privately, the goal for this change was
to reproduce output equivalent to what parser did, so I have not
incorporated your suggested change to outlaw expressions like "x[ ]"
(with an embedded space where it shouldn't be). After things settle
down we can consider that change and others.