Unify paren handling in Parser and PreParser.
authormarja@chromium.org <marja@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Thu, 6 Feb 2014 10:30:02 +0000 (10:30 +0000)
committermarja@chromium.org <marja@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Thu, 6 Feb 2014 10:30:02 +0000 (10:30 +0000)
commit76646e88edd61fc839ea40020e191d428f4031c4
treee0f5a2f178a6d14495964d8fa8d4df99a0f2d08e
parent8472a55b0c8697a60529ba5cd9aeec42598e81dc
Unify paren handling in Parser and PreParser.

It is only needed in (Pre)Parser::ParseExpressionOrLabelledStatement for not
recognizing parenthesized identifiers as labels and in
(Pre)Parser::ParseSourceElements for not recognizing a parenthesized string as
directive prologue.

Parser Expressions don't keep track of whether they're parenthesized, so
PreParser Expressions shouldn't either.

In addition, add helper funcs for checking if an Expression is identifier or a
given identifier. (PreParser Expressions can do this.)

BUG=3126
LOG=N
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/150103004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19140 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
src/ast.cc
src/ast.h
src/parser.cc
src/preparser.cc
src/preparser.h
test/cctest/test-parsing.cc