Chromium Code Reviews

Issue 7599024: Fix a bug in named getter/setter compilation. (Closed)

Created:
9 years, 4 months ago by Kevin Millikin (Chromium)
Modified:
9 years, 4 months ago
Reviewers:
Vyacheslav Egorov (Chromium)
CC:
v8-dev
Visibility:
Public.

Description

Fix a bug in named getter/setter compilation. Because these are function literals that have an associated name, we were compiling them as if they were named function expressions. This is incorrect, the property name should not be in scope. R=vegorov@chromium.org BUG= TEST= Committed: http://code.google.com/p/v8/source/detail?r=8863

Patch Set 1 #

Total comments: 4

Patch Set 2 : Incorporate review comments. #

Unified diffs Side-by-side diffs Stats (+38 lines, -23 lines)
M src/ast.h View 5 chunks +11 lines, -2 lines 0 comments
M src/compiler.cc View 1 chunk +1 line, -1 line 0 comments
M src/parser.h View 1 chunk +1 line, -6 lines 0 comments
M src/parser.cc View 9 chunks +18 lines, -14 lines 0 comments
M test/mjsunit/regress/regress-1583.js View 1 chunk +7 lines, -0 lines 0 comments

Messages

Total messages: 3 (0 generated)
Kevin Millikin (Chromium)
9 years, 4 months ago (2011-08-09 12:17:18 UTC) #1
Vyacheslav Egorov (Chromium)
LGTM http://codereview.chromium.org/7599024/diff/1/src/parser.cc File src/parser.cc (right): http://codereview.chromium.org/7599024/diff/1/src/parser.cc#newcode662 src/parser.cc:662: true, // is_expression Can we change it to ...
9 years, 4 months ago (2011-08-09 12:24:55 UTC) #2
Kevin Millikin (Chromium)
9 years, 4 months ago (2011-08-09 12:42:47 UTC) #3
http://codereview.chromium.org/7599024/diff/1/src/parser.cc
File src/parser.cc (right):

http://codereview.chromium.org/7599024/diff/1/src/parser.cc#newcode662
src/parser.cc:662: true,  // is_expression
On 2011/08/09 12:24:57, Vyacheslav Egorov wrote:
> Can we change it to pass FunctionLiteralType instead of booleans?

Good idea.  Done.  I had to move it to ast to avoid a circular include, so
FunctionLiteralType ==> FunctionLiteral::Type, which is kind of cute and still
reads OK.

Powered by Google App Engine