summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@gmail.com>2018-03-27 17:05:14 +0200
committerwolfbeast <mcwerewolf@gmail.com>2018-03-27 17:05:14 +0200
commit424ed1b165e50f2e71c082c0c70fcda2a2764d18 (patch)
treede9a183ef7229a056914bab5bcc855ca6cc3c9e9
parent8d5ec757ece850fb7ad5c712868f305636e41177 (diff)
downloadUXP-424ed1b165e50f2e71c082c0c70fcda2a2764d18.tar
UXP-424ed1b165e50f2e71c082c0c70fcda2a2764d18.tar.gz
UXP-424ed1b165e50f2e71c082c0c70fcda2a2764d18.tar.lz
UXP-424ed1b165e50f2e71c082c0c70fcda2a2764d18.tar.xz
UXP-424ed1b165e50f2e71c082c0c70fcda2a2764d18.zip
Enable Array.prototype.values
This resolves #85
-rw-r--r--js/src/jsarray.cpp2
-rw-r--r--js/src/tests/ecma_6/Array/values.js20
-rw-r--r--js/xpconnect/tests/chrome/test_xrayToJS.xul5
3 files changed, 10 insertions, 17 deletions
diff --git a/js/src/jsarray.cpp b/js/src/jsarray.cpp
index 9cbeff6a2..7a67c0095 100644
--- a/js/src/jsarray.cpp
+++ b/js/src/jsarray.cpp
@@ -3165,9 +3165,7 @@ static const JSFunctionSpec array_methods[] = {
JS_SELF_HOSTED_SYM_FN(iterator, "ArrayValues", 0,0),
JS_SELF_HOSTED_FN("entries", "ArrayEntries", 0,0),
JS_SELF_HOSTED_FN("keys", "ArrayKeys", 0,0),
-#ifdef NIGHTLY_BUILD
JS_SELF_HOSTED_FN("values", "ArrayValues", 0,0),
-#endif
/* ES7 additions */
JS_SELF_HOSTED_FN("includes", "ArrayIncludes", 2,0),
diff --git a/js/src/tests/ecma_6/Array/values.js b/js/src/tests/ecma_6/Array/values.js
index 902a66812..52a0b63c6 100644
--- a/js/src/tests/ecma_6/Array/values.js
+++ b/js/src/tests/ecma_6/Array/values.js
@@ -1,20 +1,18 @@
/* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/licenses/publicdomain/ */
-if (Array.prototype.values) {
- assertEq(Array.prototype.values, Array.prototype[Symbol.iterator]);
- assertEq(Array.prototype.values.name, "values");
- assertEq(Array.prototype.values.length, 0);
+assertEq(Array.prototype.values, Array.prototype[Symbol.iterator]);
+assertEq(Array.prototype.values.name, "values");
+assertEq(Array.prototype.values.length, 0);
- function valuesUnscopeable() {
- var values = "foo";
- with ([1, 2, 3]) {
- assertEq(indexOf, Array.prototype.indexOf);
- assertEq(values, "foo");
- }
+function valuesUnscopeable() {
+ var values = "foo";
+ with ([1, 2, 3]) {
+ assertEq(indexOf, Array.prototype.indexOf);
+ assertEq(values, "foo");
}
- valuesUnscopeable();
}
+valuesUnscopeable();
if (typeof reportCompare === 'function')
reportCompare(0, 0);
diff --git a/js/xpconnect/tests/chrome/test_xrayToJS.xul b/js/xpconnect/tests/chrome/test_xrayToJS.xul
index aaacd4d00..bf930d3ea 100644
--- a/js/xpconnect/tests/chrome/test_xrayToJS.xul
+++ b/js/xpconnect/tests/chrome/test_xrayToJS.xul
@@ -198,10 +198,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=933681
"pop", "shift", "unshift", "splice", "concat", "slice", "lastIndexOf", "indexOf",
"includes", "forEach", "map", "reduce", "reduceRight", "filter", "some", "every", "find",
"findIndex", "copyWithin", "fill", Symbol.iterator, Symbol.unscopables, "entries", "keys",
- "constructor"];
- if (isNightlyBuild) {
- gPrototypeProperties['Array'].push("values");
- }
+ "values", "constructor"];
gConstructorProperties['Array'] =
constructorProps(["join", "reverse", "sort", "push", "pop", "shift",
"unshift", "splice", "concat", "slice", "isArray",