Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

gc-exotic-objects `[[PreventExtensions]]` should return `true`.

Open
#2,008 10 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
wasm
Domain
compilers

Research direction

The issue names no files or tests. Start by locating the WebAssembly GC object specification and implementation entry points for [[PreventExtensions]] and [[IsExtensible]], then inspect existing coverage for Object.preventExtensions(). Done means GC objects return true from [[PreventExtensions]] and the behavior is covered by the relevant test suite.

Written by the indexing model from the issue text.

Description

GC object are already non-extensible ([[IsExtensible]] returns true). Preventing extensions on a non-extensible object should be an no-op.

By returning false to [[PreventExtensions]], any caller to Object.preventExtensions() would get a thrown TypeError even though the object is already non-extensible, which is surprising (even though it is not technically a violation of the object invariants).

To avoid this surprising behavior, WASM Garbage Collected Objects should return true for [[PreventExtensions]].

Dominant language
WebAssembly
Stars
3.5k
Forks
539
Avg merge
2d 1h
Merged PRs (30d)
13

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from WebAssembly/spec

All issues in WebAssembly/spec

Similar issues

More Compilers issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.