// Copyright (C) 2016 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-regular-expressions-patterns
es6id: B.1.4
description: Quantifiable assertions disallowed with `u` flag
info: |
The `u` flag precludes quantifiable assertions (even when Annex B is
honored)
Term[U] ::
[~U] QuantifiableAssertion Quantifier
negative:
phase: parse
type: SyntaxError
---*/
$DONOTEVALUATE();
/.(?!.){2,3}/u;
In 0.9.1, regjsparser throws
SyntaxError [Error]: Expected atom at position 6
.(?!.){2,3}
In 0.9.1, regjsparser throws
In 0.10.0, it parses successfully. This is likely a regression introduced in https://github.com/jviereck/regjsparser/pull/131.
c.f. https://github.com/tc39/test262/blob/main/test/language/literals/regexp/u-invalid-range-negative-lookahead.js https://github.com/mathiasbynens/regexpu-core/issues/88