Implement new.target.#2335
Conversation
3cae341 to
ddbe007
Compare
7af8644 to
b13bdc1
Compare
5843f08 to
6876342
Compare
a38d362 to
a337002
Compare
a337002 to
f37e500
Compare
495013f to
0ce3390
Compare
0ce3390 to
760f30e
Compare
|
Now that we refactored anything else, how much work is it to get this (and the class work) rebased on the latest branches? |
|
I'd like to get interpreter V2 in before this so that we can reduce the difference in our fork. I was hopping to get some help turning the PoC stuff into better production code, but we've been stretched a bit thin by other stuff. Rebasing that onto V2 has been helpful in working out how to improve that. |
|
The interpreter V2 and class prototyping work made me rethink a couple of aspects of this change, and I think I've now got it in a better place. There was one thing round bound functions that worked more by luck than judgement, and I found myself duplicating more code round |
This PR stacks on top of #2334 and adds the following commits:
Implement runtime semantics of new target.
Expose new.target in the language.
Enable new.target in 262 tests.
Now that almost every built in function is converted over to the new
JSDescriptorandJSCodemodel we can passnew.targeteasily to both built in and JS functions, so it seems like the right moment to implement that and expose this at the JS level.