Fix compat-table failures: Array.at, AnnexB if-decl, Proxy observable gets#2365
Merged
Conversation
… gets - Fix Array.prototype.at() returning wrong value for negative out-of-bounds indices by changing ulong to long (C# casts negative double to ulong as 0) - Fix AnnexB if-decl-else-decl with same function name in both branches by not adding to effectiveLexicalNames for IfStatement siblings - Use RegExpCreate instead of RegExp.Construct in String.prototype.match/search to avoid extra IsRegExp call (observable Symbol.match access through Proxy) - Remove observable sticky property read in RegExp.prototype[Symbol.replace] fast path by deriving from already-read flags string - Fix String.prototype.split to use direct JsRegExp check instead of IsRegExp to avoid observable Symbol.match access Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
lahma
enabled auto-merge (squash)
March 26, 2026 08:00
This was referenced Mar 27, 2026
This was referenced Jun 8, 2026
This was referenced Jun 29, 2026
This was referenced Jul 7, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Bug fixes (commit 1):
Array.prototype.at()returning wrong value for negative out-of-bounds indices ([1,2,3].at(-4)returned1instead ofundefined) —ulongcast truncated negative doubles to 0if-decl-else-declwith same function name in both branches — sibling branches incorrectly blocked each other viaeffectiveLexicalNamesRegExpCreateinstead of fullRegExp.ConstructinString.prototype.match/searchto avoid extraIsRegExpcall (observable extraSymbol.matchaccess through Proxy)stickyproperty read inRegExp.prototype[Symbol.replace]fast path — derive from already-readflagsstringString.prototype.splitto use directJsRegExptype check instead ofIsRegExp()to avoid observableSymbol.matchaccessFound via compat-table runner, cross-referenced with ECMAScript spec and V8 behavior.
Test plan
🤖 Generated with Claude Code