diff options
Diffstat (limited to 'deps/v8/test/mjsunit/regress-v8-8445-2.js')
-rw-r--r-- | deps/v8/test/mjsunit/regress-v8-8445-2.js | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/deps/v8/test/mjsunit/regress-v8-8445-2.js b/deps/v8/test/mjsunit/regress-v8-8445-2.js new file mode 100644 index 0000000000..828b877d0c --- /dev/null +++ b/deps/v8/test/mjsunit/regress-v8-8445-2.js @@ -0,0 +1,27 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Flags: --allow-natives-syntax --harmony-string-matchall + +class MyRegExp { + exec() { return null; } +} + +var r = /c/; + +assertEquals(["ab", ""], "abc".split(r)); +assertEquals([["c"]], [..."c".matchAll(r)]); + +r.constructor = { [Symbol.species] : MyRegExp }; + +assertEquals(["abc"], "abc".split(r)); +assertEquals([], [..."c".matchAll(r)]); + +assertEquals(["ab", ""], "abc".split(/c/)); +assertEquals([["c"]], [..."c".matchAll(/c/)]); + +RegExp.prototype.constructor = { [Symbol.species] : MyRegExp }; + +assertEquals(["abc"], "abc".split(/c/)); +assertEquals([], [..."c".matchAll(/c/)]); |