parser: size-limit errors (list/dict/params/match) never reach the first-error recorder
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 78/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- c
- Ambito
- compilers, testing-qa
Direzione di ricerca
Start in src/parser.c by enumerating every size-limit guard with grep -n exceeds, then inspect how the current token’s line, column, and length reach p_record_tok_error. Run --lint --json against over-limit list and dict literals, and add the regression in tests/test_lsp.py or tests/test_lint.sh. Done means the size-limit message is reported as the first error with location data.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Found by the builder on #1359, which fixed the same shape for the PARSE_MAX_DEPTH guards (#1342).
The size-limit errors in src/parser.c (list literal exceeds N, dict literal exceeds N, found with grep -n exceeds src/parser.c) do two things: they fprintf to stderr and they bump g_parse_errors. They never call the first-error recorder (p_record_tok_error). So --lint --json and the LSP publish whatever recovery error comes next, or a column-less parse error, instead of the real cause.
Done when
- Every size-limit guard in
src/parser.crecords throughp_record_tok_error, at the current token's line, column and length. Enumerate them with grep; don't rely on this list. -
--lint --jsonon an over-limit list literal and on an over-limit dict literal reports the size-limit message as its error. - A regression test in tests/test_lsp.py or tests/test_lint.sh, shown red on the unfixed parser and green after.
- Lingua principale
- C
- Stelle
- 3
- Fork
- 7
- Merge medio
- 4h 5m
- PR unite (30g)
- 116
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Include un Dockerfile o un file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di InauguralSystems/EigenScript
-
area:docs good first issue kind:docs-drift
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
InauguralSystems/EigenScript#1400 ·
I maintainer di solito rispondono entro 1 giorno
-
area:docs good first issue kind:docs-drift
Difficoltà 2/5 1-3 ore Idoneità per principianti 90/100
InauguralSystems/EigenScript#1396 ·
I maintainer di solito rispondono entro 1 giorno
-
docs/BUILTINS.md: task_spawn row says task_yield/task_join 'land in a later increment'; both existApertaarea:docs good first issue kind:docs-drift
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
InauguralSystems/EigenScript#1392 ·
I maintainer di solito rispondono entro 1 giorno
-
area:embed kind:silent-wrong
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
InauguralSystems/EigenScript#1387 ·
I maintainer di solito rispondono entro 1 giorno
-
area:stdlib kind:silent-wrong
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
InauguralSystems/EigenScript#1378 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di InauguralSystems/EigenScript
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
DaveGamble/cJSON#1094 ·
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Status: Opened
Difficoltà 1/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno
-
Issue-Bug Needs-Triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 1 giorno