Index: test/mjsunit/regress/regress-544991.js |
diff --git a/test/mjsunit/regress/regress-544991.js b/test/mjsunit/regress/regress-544991.js |
index dc09fae6a42ceeb6fedc290e0ed6cdf2e37784a1..911d8acc8912180a759be7b683e7d320f7fce00b 100644 |
--- a/test/mjsunit/regress/regress-544991.js |
+++ b/test/mjsunit/regress/regress-544991.js |
@@ -2,14 +2,22 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
+// Flags: --harmony-species |
+ |
+'use strict'; |
+ |
var typedArray = new Int8Array(1); |
var saved; |
var called; |
-typedArray.constructor = function(x) { called = true; saved = x }; |
-typedArray.constructor.prototype = Int8Array.prototype; |
+class TypedArraySubclass extends Int8Array { |
+ constructor(x) { |
+ super(x); |
+ called = true; |
+ saved = x; |
+ } |
+} |
+typedArray.constructor = TypedArraySubclass |
typedArray.map(function(){}); |
-// To meet the spec, constructor shouldn't be called directly, but |
-// if it is called for now, the argument should be an Array |
-assertTrue(called); // Will fail later; when so, delete this test |
-assertEquals("Array", saved.constructor.name); |
+assertTrue(called); |
+assertEquals(saved, 1); |