[ "/abc/", "/abc/g", // considered as dynamic "new RegExp(pattern)", "new RegExp('\\\\p{Emoji_Presentation}\\\\P{Script_Extensions=Latin}' + '', `ug`)", "new RegExp('\\\\cA' + '')", "RegExp(pattern, 'g')", "new RegExp(f('a'))", "RegExp(prefix + 'a')", "new RegExp('a' + suffix)", "RegExp(`a` + suffix);", "new RegExp(String.raw`a` + suffix);", "RegExp('a', flags)", "const flags = 'gu';RegExp('a', flags)", "RegExp('a', 'g' + flags)", "new RegExp(String.raw`a`, flags);", "RegExp(`${prefix}abc`)", "new RegExp(`a${b}c`);", "new RegExp(`a${''}c`);", "new RegExp(String.raw`a${b}c`);", "new RegExp(String.raw`a${''}c`);", "new RegExp('a' + 'b')", "RegExp(1)", "new RegExp('(\\\\p{Emoji_Presentation})\\\\1' + '', `ug`)", "RegExp(String.raw`\\78\\126` + '\\\\5934', '' + `g` + '')", "func(new RegExp(String.raw`a${''}c\\d`, 'u'),new RegExp(String.raw`a${''}c\\d`, 'u'))", "new RegExp('\\\\[' + \"b\\\\]\")", // redundant wrapping is allowed "new RegExp(/a/);", // invalid number of arguments "new RegExp;", "new RegExp();", "RegExp();", "new RegExp('a', 'g', 'b');", "RegExp('a', 'g', 'b');", "new RegExp(`a`, `g`, `b`);", "RegExp(`a`, `g`, `b`);", "new RegExp(String.raw`a`, String.raw`g`, String.raw`b`);", "RegExp(String.raw`a`, String.raw`g`, String.raw`b`);", "new RegExp(/a/, 'u', 'foo');", // not String.raw`` "new RegExp(String`a`);", "RegExp(raw`a`);", "new RegExp(f(String.raw)`a`);", "RegExp(string.raw`a`);", "new RegExp(String.Raw`a`);", "new RegExp(String[raw]`a`);", "RegExp(String.raw.foo`a`);", "new RegExp(String.foo.raw`a`);", "RegExp(foo.String.raw`a`);", "new RegExp(String.raw);", // not the global String in String.raw`` "let String; new RegExp(String.raw`a`);", "function foo() { var String; new RegExp(String.raw`a`); }", "function foo(String) { RegExp(String.raw`a`); }", "if (foo) { const String = bar; RegExp(String.raw`a`); }", // not RegExp "new Regexp('abc');", "Regexp(`a`);", "new Regexp(String.raw`a`);", // not the global RegExp "let RegExp; new RegExp('a');", "function foo() { var RegExp; RegExp('a', 'g'); }", "function foo(RegExp) { new RegExp(String.raw`a`); }", "if (foo) { const RegExp = bar; RegExp('a'); }", "class C { #RegExp; foo() { globalThis.#RegExp('a'); } }", // ES2024 "new RegExp('[[A--B]]' + a, 'v')", // not RegExp "new Regexp('abc')", "Regexp(`a`);", "new Regexp(String.raw`a`);", // invalid RegExp "RegExp('*');", "new RegExp('*', 'g');", "RegExp('*', 'g');", "new RegExp('a', 'uv')", "new RegExp('+');", "RegExp('+');", "new RegExp('+', 'g');", "RegExp('+', 'g');" ]