Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8)

Side by Side Diff: src/parser.h

Issue 720863002: Fix desugaring of let bindings in for loops to handle continue properly (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: New desugaring comment, not yet implemented Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | src/parser.cc » ('j') | src/parser.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_PARSER_H_ 5 #ifndef V8_PARSER_H_
6 #define V8_PARSER_H_ 6 #define V8_PARSER_H_
7 7
8 #include "src/allocation.h" 8 #include "src/allocation.h"
9 #include "src/ast.h" 9 #include "src/ast.h"
10 #include "src/compiler.h" // For CachedDataMode 10 #include "src/compiler.h" // For CachedDataMode
(...skipping 743 matching lines...) Expand 10 before | Expand all | Expand 10 after
754 // Support for hamony block scoped bindings. 754 // Support for hamony block scoped bindings.
755 Block* ParseScopedBlock(ZoneList<const AstRawString*>* labels, bool* ok); 755 Block* ParseScopedBlock(ZoneList<const AstRawString*>* labels, bool* ok);
756 756
757 // Initialize the components of a for-in / for-of statement. 757 // Initialize the components of a for-in / for-of statement.
758 void InitializeForEachStatement(ForEachStatement* stmt, 758 void InitializeForEachStatement(ForEachStatement* stmt,
759 Expression* each, 759 Expression* each,
760 Expression* subject, 760 Expression* subject,
761 Statement* body); 761 Statement* body);
762 Statement* DesugarLetBindingsInForStatement( 762 Statement* DesugarLetBindingsInForStatement(
763 Scope* inner_scope, ZoneList<const AstRawString*>* names, 763 Scope* inner_scope, ZoneList<const AstRawString*>* names,
764 ForStatement* loop, Statement* init, Expression* cond, Statement* next, 764 ForStatement* loop, Statement* init, Expression* cond, Expression* next,
765 Statement* body, bool* ok); 765 Statement* body, bool* ok);
766 766
767 FunctionLiteral* ParseFunctionLiteral( 767 FunctionLiteral* ParseFunctionLiteral(
768 const AstRawString* name, Scanner::Location function_name_location, 768 const AstRawString* name, Scanner::Location function_name_location,
769 bool name_is_strict_reserved, FunctionKind kind, 769 bool name_is_strict_reserved, FunctionKind kind,
770 int function_token_position, FunctionLiteral::FunctionType type, 770 int function_token_position, FunctionLiteral::FunctionType type,
771 FunctionLiteral::ArityRestriction arity_restriction, bool* ok); 771 FunctionLiteral::ArityRestriction arity_restriction, bool* ok);
772 772
773 // Magical syntax support. 773 // Magical syntax support.
774 Expression* ParseV8Intrinsic(bool* ok); 774 Expression* ParseV8Intrinsic(bool* ok);
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after
922 private: 922 private:
923 static const int kLiteralTypeSlot = 0; 923 static const int kLiteralTypeSlot = 0;
924 static const int kElementsSlot = 1; 924 static const int kElementsSlot = 1;
925 925
926 DISALLOW_IMPLICIT_CONSTRUCTORS(CompileTimeValue); 926 DISALLOW_IMPLICIT_CONSTRUCTORS(CompileTimeValue);
927 }; 927 };
928 928
929 } } // namespace v8::internal 929 } } // namespace v8::internal
930 930
931 #endif // V8_PARSER_H_ 931 #endif // V8_PARSER_H_
OLDNEW
« no previous file with comments | « no previous file | src/parser.cc » ('j') | src/parser.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698