0593cb7218
.. by the runtime flag --enable-experimental-regexp-engine. Introduced in https://chromium-review.googlesource.com/c/v8/v8/+/2461244 Tbr: neis@chromium.org Bug: v8:10765 Change-Id: Ic32464ced7e5ddb4c31fe165eddb6b9d19260efc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2516920 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Auto-Submit: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#70963}
23 lines
754 B
JavaScript
23 lines
754 B
JavaScript
// Copyright 2020 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
|
|
// Flags: --no-enable-experimental-regexp-engine
|
|
|
|
// We shouldn't recognize the 'l' flag.
|
|
assertThrows(() => new RegExp("asdf", "l"), SyntaxError)
|
|
assertThrows(() => new RegExp("123|xyz", "l"), SyntaxError)
|
|
assertThrows(() => new RegExp("((a*)*)*", "yls"), SyntaxError)
|
|
assertThrows(() => new RegExp("((a*)*)*\1", "l"), SyntaxError)
|
|
|
|
// RegExps shouldn't have a 'linear' property.
|
|
assertFalse(RegExp.prototype.hasOwnProperty('linear'));
|
|
assertFalse(/123/.hasOwnProperty('linear'));
|
|
|
|
{
|
|
let re = /./;
|
|
re.linear = true;
|
|
assertEquals("", re.flags);
|
|
}
|