commit | b0a09d78095b49ce7d3551032a65f707456c1f27 | [log] [tgz] |
---|---|---|
author | littledan <littledan@chromium.org> | Fri Dec 23 14:32:16 2016 |
committer | Commit bot <commit-bot@chromium.org> | Fri Dec 23 14:32:16 2016 |
tree | 3c0c648ace37243da22f976d5383aa6b77125e0f | |
parent | e92118bbc25c39b3213a3f4dcbf35e825eaf0b8a [diff] |
[intl] Add new semantics + compat fallback to Intl constructor ECMA 402 v2 made Intl constructors more strict in terms of how they would initialize objects, refusing to initialize objects which have already been constructed. However, when Chrome tried to ship these semantics, we ran into web compatibility issues. This patch tries to square the circle and implement the simpler v2 object semantics while including a compatibility workaround to allow objects to sort of be initialized later, storing the real underlying Intl object in a symbol-named property. The new semantics are described in this PR against the ECMA 402 spec: https://github.com/tc39/ecma402/pull/84 BUG=v8:4360, v8:4870 LOG=Y Review-Url: https://codereview.chromium.org/2582993002 Cr-Commit-Position: refs/heads/master@{#41943}
V8 is Google's open source JavaScript engine.
V8 implements ECMAScript as specified in ECMA-262.
V8 is written in C++ and is used in Google Chrome, the open source browser from Google.
V8 can run standalone, or can be embedded into any C++ application.
V8 Project page: https://github.com/v8/v8/wiki
Checkout depot tools, and run
fetch v8
This will checkout V8 into the directory v8
and fetch all of its dependencies. To stay up to date, run
git pull origin gclient sync
For fetching all branches, add the following into your remote configuration in .git/config
:
fetch = +refs/branch-heads/*:refs/remotes/branch-heads/* fetch = +refs/tags/*:refs/tags/*
Please follow the instructions mentioned on the V8 wiki.