0xMiden / 0xMiden/air-script

Vector Slice Expansion in Evaluator Calls

Abierto
#486 0 comentarios 0 reacciones 1 asignado Reclamado por @Soulthym Ver en GitHub
IR
Lenguaje dominante
Rust
Estrellas
96
Forks
39
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

### Problem Description

The compiler fails to properly expand vector slice arguments when evaluators call other evaluators, leading to argument count mismatches.

### Minimal Example

```air
ev chiplets_constraints([chiplets[20]]) {
enf chiplet_selectors([chiplets[0..5]]); // Should expand slice to 5 args
}

ev chiplet_selectors([s[5]]) { // Expects 5 individual parameters
enf is_binary([s[0]]);
enf is_binary([s[1]]) when s[0];
enf is_binary([s[2]]) when s[0] & s[1];
enf is_binary([s[3]]) when s[0] & s[1] & s[2];
enf is_binary([s[4]]) when s[0] & s[1] & s[2] & s[3];
}
```

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Examina la lógica de expansión de llamadas del evaluador en el compilador, probablemente en un módulo que maneja segmentos de vectores. El problema muestra un segmento `chiplets[0..5]` que debería expandirse a 5 argumentos al llamar a `chiplet_selectors`. Comienza por encontrar dónde se procesan las llamadas del evaluador y cómo se cuentan los argumentos. Revisa los archivos de prueba para ver las pruebas existentes de expansión de llamadas del evaluador y comprender el comportamiento esperado.

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

Evaluación

Stack tecnológico
rust
Área
compilers
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
45/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.