Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 6e8fef40092d06a84de870150952f169c94bd953
      
https://github.com/WebKit/WebKit/commit/6e8fef40092d06a84de870150952f169c94bd953
  Author: Sosuke Suzuki <[email protected]>
  Date:   2025-02-23 (Sun, 23 Feb 2025)

  Changed paths:
    A JSTests/stress/iterator-helpers-close-for-invalid-argument.js
    M JSTests/test262/expectations.yaml
    M Source/JavaScriptCore/builtins/JSIteratorPrototype.js
    M Source/JavaScriptCore/runtime/JSIteratorPrototype.cpp

  Log Message:
  -----------
  [JSC] Close Iterator Helpers underlying iterator when arguments are invalid
https://bugs.webkit.org/show_bug.cgi?id=284709

Reviewed by Yusuke Suzuki.

The normative change[1] that requires closing underlying iterators when
argument validation fails for iterator helpers reached consensus at the
TC39 meeting in December 2024[2].

This patch implements it.

[1]: https://github.com/tc39/ecma262/pull/3467
[2]: https://github.com/tc39/agendas/blob/main/2024/12.md

* JSTests/stress/iterator-helpers-close-for-invalid-argument.js: Added.
(shouldThrow):
(shouldBe):
(throw.new.Error.let.closable.get next):
(throw.new.Error):
(shouldBe.let.closable.get next):
(shouldBe.OurError):
(let.closable.get next):
(shouldBe.get shouldBe):
(OurError):
(get shouldBe):
* Source/JavaScriptCore/builtins/JSIteratorPrototype.js:
(some.wrapper.iterator):
(some):
(every.wrapper.iterator):
(every):
(find.wrapper.iterator):
(find):
(reduce):

Canonical link: https://commits.webkit.org/290907@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to