tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit b3fb209a4bc086c3805621484fedd2d956b64ed5
parent 9a6db133a95008484e6cb0721ccbcc59ecc26196
Author: Daniel Minor <dminor@mozilla.com>
Date:   Wed, 15 Oct 2025 17:38:02 +0000

Bug 1903322 - Remove prefs for duplicate named capture groups and pattern modifiers; r=mgaudet

This also removes some leftover code from RegExp.Escape.

Differential Revision: https://phabricator.services.mozilla.com/D268591

Diffstat:
Mjs/src/jsapi.cpp | 10----------
Mjs/src/shell/js.cpp | 19-------------------
Mjs/xpconnect/src/XPCJSContext.cpp | 9---------
Mmodules/libpref/init/StaticPrefList.yaml | 14--------------
4 files changed, 0 insertions(+), 52 deletions(-)

diff --git a/js/src/jsapi.cpp b/js/src/jsapi.cpp @@ -4540,16 +4540,6 @@ JS_PUBLIC_API void JS_SetGlobalJitCompilerOption(JSContext* cx, case JSJITCOMPILER_WASM_JIT_OPTIMIZING: JS::ContextOptionsRef(cx).setWasmIon(!!value); break; - case JSJITCOMPILER_REGEXP_DUPLICATE_NAMED_GROUPS: - jit::JitOptions.js_regexp_duplicate_named_groups = !!value; - break; - -#ifdef NIGHTLY_BUILD - case JSJITCOMPILER_REGEXP_MODIFIERS: - jit::JitOptions.js_regexp_modifiers = !!value; - break; -#endif - #ifdef DEBUG case JSJITCOMPILER_FULL_DEBUG_CHECKS: jit::JitOptions.fullDebugChecks = !!value; diff --git a/js/src/shell/js.cpp b/js/src/shell/js.cpp @@ -12840,11 +12840,6 @@ bool InitOptionParser(OptionParser& op) { "Disable Symbols As WeakMap keys") || !op.addBoolOption('\0', "enable-uint8array-base64", "Enable Uint8Array base64/hex methods") || - !op.addBoolOption('\0', "enable-regexp-duplicate-named-groups", - "Enable Duplicate Named Capture Groups") || - !op.addBoolOption('\0', "enable-regexp-modifiers", - "Enable Pattern Modifiers") || - !op.addBoolOption('\0', "enable-regexp-escape", "Enable RegExp.escape") || !op.addBoolOption('\0', "enable-top-level-await", "Enable top-level await") || !op.addStringOption('\0', "shared-memory", "on/off", @@ -13234,12 +13229,6 @@ bool SetGlobalOptionsPreJSInit(const OptionParser& op) { if (op.getBoolOption("enable-shadow-realms")) { JS::Prefs::set_experimental_shadow_realms(true); } - if (op.getBoolOption("enable-regexp-duplicate-named-groups")) { - JS::Prefs::setAtStartup_experimental_regexp_duplicate_named_groups(true); - } - if (op.getBoolOption("enable-regexp-modifiers")) { - JS::Prefs::setAtStartup_experimental_regexp_modifiers(true); - } if (op.getBoolOption("enable-uint8array-base64")) { JS::Prefs::setAtStartup_experimental_uint8array_base64(true); } @@ -14163,14 +14152,6 @@ bool SetContextJITOptions(JSContext* cx, const OptionParser& op) { # endif #endif - if (op.getBoolOption("enable-regexp-duplicate-named-groups")) { - jit::JitOptions.js_regexp_duplicate_named_groups = true; - } - - if (op.getBoolOption("enable-regexp-modifiers")) { - jit::JitOptions.js_regexp_modifiers = true; - } - return true; } diff --git a/js/xpconnect/src/XPCJSContext.cpp b/js/xpconnect/src/XPCJSContext.cpp @@ -1019,15 +1019,6 @@ static void ReloadPrefsCallback(const char* pref, void* aXpccx) { auto& contextOptions = JS::ContextOptionsRef(cx); SetPrefableContextOptions(contextOptions); - JS_SetGlobalJitCompilerOption( - cx, JSJITCOMPILER_REGEXP_DUPLICATE_NAMED_GROUPS, - StaticPrefs:: - javascript_options_experimental_regexp_duplicate_named_groups()); - - JS_SetGlobalJitCompilerOption( - cx, JSJITCOMPILER_REGEXP_MODIFIERS, - StaticPrefs::javascript_options_experimental_regexp_modifiers()); - // Set options not shared with workers. contextOptions .setThrowOnDebuggeeWouldRun(Preferences::GetBool( diff --git a/modules/libpref/init/StaticPrefList.yaml b/modules/libpref/init/StaticPrefList.yaml @@ -8933,20 +8933,6 @@ # Non-startup pref because the WPT test harness sets prefs after startup. set_spidermonkey_pref: always -# Experimental support for Duplicate Named Capture Groups in JavaScript. -- name: javascript.options.experimental.regexp_duplicate_named_groups - type: bool - value: true - mirror: always - set_spidermonkey_pref: startup - -# Experimental support for Pattern Modifiers in JavaScript. -- name: javascript.options.experimental.regexp_modifiers - type: bool - value: true - mirror: always - set_spidermonkey_pref: startup - # Experimental support for Uint8Array base64/hex in JavaScript. - name: javascript.options.experimental.uint8array_base64 type: bool