https://codereview.chromium.org/949763003/diff/1/src/full-codegen.cc
File src/full-codegen.cc (right):

https://codereview.chromium.org/949763003/diff/1/src/full-codegen.cc#newcode846
src/full-codegen.cc:846: // to execute the constructor and only fail
when an assignment to 'this'
On 2015/02/25 11:28:40, Dmitry Lomov (chromium) wrote:
I believe we can now kill this entire function and all its uses (since
now the
parser guarantees that 'super(...)' only occurs where new.target is
avaliable.

That is unrelated to this CL. I'll remove it in another CL.

https://codereview.chromium.org/949763003/diff/1/src/scopes.cc
File src/scopes.cc (right):

https://codereview.chromium.org/949763003/diff/1/src/scopes.cc#newcode315
src/scopes.cc:315: new_target_ =
On 2015/02/25 11:28:40, Dmitry Lomov (chromium) wrote:
I'd prefer not declaring new.target if it is not needed.

This is where I was when I got pulled into other work. My plan was to do
this all conditionally but it fails because scope_uses_new_target_ was
not getting applied correctly. At one point I thought I could do the
parsing part in one CL. However, the parser needs new_target_ to be
allocated (theres a DCHECK iirc).

This is where the CL is incomplete. The tracking of new.target is not
working correctly.

https://codereview.chromium.org/949763003/diff/1/src/scopes.cc#newcode318
src/scopes.cc:318: new_target_->AllocateTo(Variable::PARAMETER, -2);
Do you think this is OK for cases like?

function f() {
  print(new.target);
}
new f()

https://codereview.chromium.org/949763003/

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to