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

[spectec] Tstringchar excludes \u{E000}..\u{E7FF}

Cerrado Apto para principiantes
#2,284 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Ya se ha fusionado un pull request relacionado.

  • #2295 de @rossberg — fusionado

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
78/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
wasm
Área
compilers

Línea de trabajo

Lee la regla Tstringchar en specification/wasm-3.0/6.1-text.values.spectec en la línea enlazada y luego comprueba cómo acepta el intérprete de referencia los dos escapes del ejemplo. Corrige el límite inferior para que se acepten los valores escalares Unicode válidos de U+E000 a U+E7FF y verifica que ambos escapes del ejemplo se analicen correctamente.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Tstringchar admits a \u{n} escape only if n < 0xD800 \/ 0xE800 <= n < 0x110000:

https://github.com/WebAssembly/spec/blob/340650f2f620169685814774bc5b019d05d4d3d7/specification/wasm-3.0/6.1-text.values.spectec#L98

The surrogates end at U+DFFF, so the lower bound of the second range should be 0xE000. As written, the escapes \u{E000} to \u{E7FF}, which are valid Unicode scalar values, are malformed in the 3.0 text format. The reference interpreter accepts them:

(module (memory 1) (data (i32.const 0) "\u{E000}\u{E7FF}")
  (func (export "b") (param i32) (result i32) (i32.load8_u (local.get 0))))
(assert_return (invoke "b" (i32.const 0)) (i32.const 0xee))
(assert_return (invoke "b" (i32.const 3)) (i32.const 0xee))

Tested at 340650f.

Lenguaje dominante
WebAssembly
Estrellas
3.5k
Forks
540
Merge medio
1 d 6 min
PR fusionados (30 d)
25

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/spec

Todos los issues de WebAssembly/spec

Issues similares

Más issues de Compilers

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.