 Chromium Code Reviews
 Chromium Code Reviews Issue 1723313002:
  [parser] Enforce module-specific identifier restriction  (Closed) 
  Base URL: https://chromium.googlesource.com/v8/v8.git@master
    
  
    Issue 1723313002:
  [parser] Enforce module-specific identifier restriction  (Closed) 
  Base URL: https://chromium.googlesource.com/v8/v8.git@master| Index: src/parsing/preparser.cc | 
| diff --git a/src/parsing/preparser.cc b/src/parsing/preparser.cc | 
| index d335c8bdcd29433337d1173c9e17b3a1e116a999..9e069b360f72f3c759137144e88af734eda5d449 100644 | 
| --- a/src/parsing/preparser.cc | 
| +++ b/src/parsing/preparser.cc | 
| @@ -38,8 +38,10 @@ void PreParserTraits::ReportMessageAt(int start_pos, int end_pos, | 
| PreParserIdentifier PreParserTraits::GetSymbol(Scanner* scanner) { | 
| - if (scanner->current_token() == Token::FUTURE_RESERVED_WORD) { | 
| - return PreParserIdentifier::FutureReserved(); | 
| + if (scanner->current_token() == Token::ENUM) { | 
| + return PreParserIdentifier::Enum(); | 
| + } else if (scanner->current_token() == Token::AWAIT) { | 
| + return PreParserIdentifier::Await(); | 
| } else if (scanner->current_token() == | 
| Token::FUTURE_STRICT_RESERVED_WORD) { | 
| return PreParserIdentifier::FutureStrictReserved(); | 
| @@ -694,7 +696,7 @@ PreParser::Statement PreParser::ParseExpressionOrLabelledStatement(bool* ok) { | 
| if (starts_with_identifier && expr.IsIdentifier() && peek() == Token::COLON) { | 
| // Expression is a single identifier, and not, e.g., a parenthesized | 
| // identifier. | 
| - DCHECK(!expr.AsIdentifier().IsFutureReserved()); | 
| + DCHECK(!expr.AsIdentifier().IsEnum()); | 
| 
mike3
2016/02/24 16:26:25
This check is equivalent to the previously-existin
 
adamk
2016/02/24 19:13:25
I think this means you need to add code to pass th
 | 
| DCHECK(is_sloppy(language_mode()) || | 
| !IsFutureStrictReserved(expr.AsIdentifier())); | 
| Consume(Token::COLON); |