haikuwebkit/JSTests/modules
Alexey Shvayka 3df45d0a35 Add JSModuleNamespaceObject::deletePropertyByIndex() method
https://bugs.webkit.org/show_bug.cgi?id=222611

Reviewed by Yusuke Suzuki.

JSTests:

* modules/arbitrary-module-names-indexed.js: Added.
* modules/arbitrary-module-names/export-indexed.js: Added.

Source/JavaScriptCore:

r270923 introduced arbitrary module namespace identifiers, enabling indexed identifiers
to be exported. While they were already handled by getOwnPropertySlotByIndex(), indexed
[[Delete]] override was absent, which prevented TypeError from being thrown.

This patch adds the missing method, aligning JSC with the spec [1].

[1]: https://tc39.es/ecma262/#sec-module-namespace-exotic-objects-delete-p

* runtime/JSModuleNamespaceObject.cpp:
(JSC::JSModuleNamespaceObject::deleteProperty):
(JSC::JSModuleNamespaceObject::deletePropertyByIndex):
* runtime/JSModuleNamespaceObject.h:


Canonical link: https://commits.webkit.org/234789@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@273816 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2021-03-03 16:37:24 +00:00
..
aliased-names
aliasing
arbitrary-module-names Add JSModuleNamespaceObject::deletePropertyByIndex() method 2021-03-03 16:37:24 +00:00
async-generator-default [JSC] Async generator default-export is not handled 2020-09-17 17:54:23 +00:00
breaking-builtin-promise-then-does-not-break-internal-promise
caching-should-not-make-ambiguous
cyclic-may-produce-tdz
default-error
default-value-case-should-be-copied
defaults
destructuring-export
different-view
execution-order-cyclic
execution-order-dag
execution-order-depth
execution-order-sibling
execution-order-tree
export-conflict-ok
export-default-function-hoisting
export-from
export-with-declarations-list
exported-function-may-be-called-before-module-is-executed
fallback-ambiguous
import-call
import-error
import-meta
import-named-async
imported-bindings-are-immutable
imported-bindings-can-be-changed-in-original-module
indirect-export-error
module-eval
module-namespace-object-define-own-property [JSC] Update JSModuleNamespaceObject::defineOwnProperty 2020-09-17 17:17:04 +00:00
namespace
namespace-ambiguous
namespace-error
namespace-object-inline-caching
namespace-re-export
namespace-tdz
resources
scopes
self-star-link
tagged-template-inside-module
uncacheable-when-see-star
aliased-names.js
aliasing.js
arbitrary-module-names-indexed.js Add JSModuleNamespaceObject::deletePropertyByIndex() method 2021-03-03 16:37:24 +00:00
arbitrary-module-names.js [JSC] Accept arbitrary module namespace identifier names 2020-12-17 02:46:48 +00:00
async-function-export.js
async-generator-default.js [JSC] Async generator default-export is not handled 2020-09-17 17:54:23 +00:00
breaking-builtin-promise-then-does-not-break-internal-promise.js
caching-should-not-make-ambiguous.js
cyclic-may-produce-tdz.js
default-value-case-should-be-copied.js
defaults.js
destructuring-export.js
different-view.js
execution-order-cyclic.js
execution-order-dag.js
execution-order-depth.js
execution-order-self.js
execution-order-sibling.js
execution-order-tree.js
export-conflict-ok.js
export-default-function-hoisting.js
export-default-function-name-in-assignment-expression.js
export-default-function-name-in-class-declaration.js
export-default-function-name-in-function-declaration.js
export-default-function-name-in-generator-declaration.js
export-from.js
export-with-declarations-list.js
exported-function-may-be-called-before-module-is-executed.js
fallback-ambiguous.js
html-comments.js
import-call.js
import-default-async.js
import-error.js
import-meta-assignment.js
import-meta-syntax.js
import-meta.js
import-named-async-as.js
import-named-async.js
import-namespace-async.js
imported-bindings-are-immutable.js
imported-bindings-can-be-changed-in-original-module.js
indirect-export-error.js
module-assert-access-binding.js
module-assert-access-namespace.js
module-eval.js
module-is-strict-code.js
module-jit-reachability.js
module-namespace-is-frozen.js
module-namespace-is-sealed.js
module-namespace-object-define-own-property.js [JSC] Update JSModuleNamespaceObject::defineOwnProperty 2020-09-17 17:17:04 +00:00
namespace-ambiguous.js
namespace-empty.js
namespace-error.js
namespace-object-get-property.js
namespace-object-has-property.js
namespace-object-inline-caching.js
namespace-object-symbol-iterator-name.js
namespace-object-try-get.js
namespace-object-typed-array-fast-path.js
namespace-prototype-assignment.js
namespace-re-export.js
namespace-set-prototype-of.js
namespace-tdz.js
namespace.js
scopes-eval.js
scopes.js
self-star-link.js
string-prototype-module-scope.js
tagged-template-inside-module.js
this-should-be-undefined.js
uncacheable-when-see-star.js