Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Improve interpreter spec test coverage

Abierto
#8,261 21 comentarios 0 reacciones 1 asignado Ver en GitHub

Los mantenedores suelen responder en 1 día

@stevenfontanella ya está trabajando en esto.

Desde el 3/2/2026.

  • #8058 de @stevenfontanella — fusionado
  • #8076 de @stevenfontanella — fusionado
  • #8086 de @stevenfontanella — fusionado
  • #8222 de @stevenfontanella — fusionado
  • #8233 de @stevenfontanella — fusionado
  • #8234 de @stevenfontanella — fusionado
  • #8254 de @stevenfontanella — fusionado
  • #8270 de @stevenfontanella — fusionado
  • #8357 de @stevenfontanella — fusionado
  • #8380 de @stevenfontanella — fusionado
  • #8396 de @stevenfontanella — fusionado

Evaluación

Este issue todavía no se ha evaluado.

Descripción

Failing spec tests as of November:

test/spec/

  • const.wast,
  • linking.wast,
  • unreached-invalid.wast,
  • elem.wast,

test/spec/threads (to be upstreamed into testsuite from the threads repo), ported in #8418.

  • atomic.wast
  • deeply_nested.wast
  • LB_atomic.wast
  • LB.wast
  • MP_atomic.wast
  • MP.wast
  • nested.wast
  • SB_atomic.wast
  • SB.wast
  • simple.wast
  • thread.wast
  • unlinkable.wast
  • wait_notify.wast

test/spec/testsuite/

  • address.wast, # 64-bit offset allowed by memory64
  • array_new_elem.wast, # Failure to parse element segment item abbreviation
  • binary.wast, # Missing data count section validation
  • call_indirect64.wast, # Failure to parse element segment abbreviation
  • comments.wast, # Issue with carriage returns being treated as newlines
  • const.wast, # Hex float constant not recognized as out of range
  • conversions.wast, # Promoted NaN should be canonical
  • data.wast, # Fail to parse data segment offset abbreviation
  • elem.wast, # Requires modeling empty declarative segments
  • f32.wast, # Adding -0 and -nan should give a canonical NaN
  • f64.wast, # Adding -0 and -nan should give a canonical NaN
  • float_exprs.wast, # Adding 0 and NaN should give canonical NaN
  • float_misc.wast, # Rounding wrong on f64.sqrt
  • func.wast, # Duplicate parameter names not properly rejected
  • global.wast, # Fail to parse table
  • if.wast, # Requires more precise unreachable validation
  • imports.wast, # Missing validation of missing function on instantiation
  • proposals/threads/imports.wast, # Missing memory type validation on instantiation
  • linking.wast, # Missing function type validation on instantiation
  • memory.wast, # Requires wast module definition support
  • proposals/threads/memory.wast, # Missing memory type validation on instantiation
  • memory64-imports.wast, # Missing validation on instantiation
  • annotations.wast, # String annotations IDs should be allowed
  • id.wast, # Empty IDs should be disallowed
  • instance.wast, # Requires wast module definition support
  • table64.wast, # Requires wast module definition support
  • table_grow.wast, # Incorrect table linking semantics in interpreter
  • tag.wast, # Non-empty tag results allowed by stack switching
  • try_table.wast, # Requires try_table interpretation
  • local_init.wast, # Requires local validation to respect unnamed blocks
  • ref_func.wast, # Requires rejecting undeclared functions references
  • ref_is_null.wast, # Requires ref.null wast constants
  • ref_null.wast, # Requires ref.null wast constants
  • return_call_indirect.wast, # Requires more precise unreachable validation
  • select.wast, # Requires ref.null wast constants
  • table.wast, # Requires support for table default elements
  • unreached-invalid.wast, # Requires more precise unreachable validation
  • array.wast, # Requires support for table default elements
  • br_if.wast, # Requires more precise branch validation
  • br_on_cast.wast, # Requires host references to not be externalized i31refs
  • br_on_cast_fail.wast, # Requires host references to not be externalized i31refs
  • extern.wast, # Requires ref.host wast constants
  • i31.wast, # Requires support for table default elements
  • ref_cast.wast, # Requires host references to not be externalized i31refs
  • ref_test.wast, # Requires host references to not be externalized i31refs
  • struct.wast, # Duplicate field names not properly rejected
  • type-rec.wast, # Missing function type validation on instantiation
  • type-subtyping.wast, # ShellExternalInterface::callTable does not handle subtyping
  • call_indirect.wast, # Bug with 64-bit inline element segment parsing
  • memory64.wast, # Requires wast module definition support
  • imports0.wast, # Missing memory type validation on instantiation
  • imports2.wast, # Missing memory type validation on instantiation
  • imports3.wast, # Missing memory type validation on instantiation
  • linking0.wast, # Missing memory type validation on instantiation
  • linking3.wast, # Fatal error on missing table.
  • i16x8_relaxed_q15mulr_s.wast, # Requires wast either support
  • i32x4_relaxed_trunc.wast, # Requires wast either support
  • i8x16_relaxed_swizzle.wast, # Requires wast either support
  • relaxed_dot_product.wast, # Requires wast either support
  • relaxed_laneselect.wast, # Requires wast either support
  • relaxed_madd_nmadd.wast, # Requires wast either support
  • relaxed_min_max.wast, # Requires wast either support
  • simd_const.wast, # Hex float constant not recognized as out of range
  • simd_conversions.wast, # Promoted NaN should be canonical
  • simd_f32x4.wast, # Min of 0 and NaN should give a canonical NaN
  • simd_f32x4_arith.wast, # Adding inf and -inf should give a canonical NaN
  • simd_f32x4_rounding.wast, # Ceil of NaN should give a canonical NaN
  • simd_f64x2.wast, # Min of 0 and NaN should give a canonical NaN
  • simd_f64x2_arith.wast, # Adding inf and -inf should give a canonical NaN
  • simd_f64x2_rounding.wast, # Ceil of NaN should give a canonical NaN
  • simd_i32x4_cmp.wast, # UBSan error on integer overflow
  • simd_i32x4_arith2.wast, # UBSan error on integer overflow
  • simd_i32x4_dot_i16x8.wast, # UBSan error on integer overflow
  • token.wast, # Lexer should require spaces between strings and non-paren tokens
Lenguaje dominante
WebAssembly
Estrellas
8.6k
Forks
892
Merge medio
1 d 18 h
PR fusionados (30 d)
79

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de WebAssembly/binaryen

Todos los issues de WebAssembly/binaryen

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.