Call graph (Rust/Go): Rust macro invocations linked to a same-named fn, calls inside Rust struct literals / vec![] args missed, Go generic instantiation call missed
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
Direzione di ricerca
Start by reading callcheck_rustgo2.py and gore_vs_linuxdoom.py in /srv/storage_16tb/projects/gitgalaxy/doom-study/study-prototype/, then trace call-graph extraction and oracle checks for Rust macros, struct literals, nested macro arguments, and Go generic instantiation. Use the cited Rust and Go locations as regression cases. Done means each shape has a focused test, the #5630 oracle reports zero misses or false calls, and any changed goldens include an explained drift.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem
Independent body oracle on the licensed Rust/Go DOOM ports (engine 0e2bf4ade) finds Rust/Go call graphs very accurate (recall 0.999 on rust-doom, room4doom and gore; precision 1.000 on rust-doom and gore, ~0.998 on room4doom), with these small shapes:
- Rust macro invocation recorded as a call to an unrelated same-named function (room4doom, 29 edges):
write!(f, ...)insidefmt(expands tof.write_fmt(...)) becomesfmt -> write, linking to the crate's ownwritefn, e.g.game-config/src/lib.rs:30,gameplay/src/save.rs:63,gamestate-traits/src/keys.rs:154. Aname!(...)invocation should not resolve to a functionname. - Rust calls inside struct-literal fields and macro arguments missed (room4doom, ~10):
render/backend/src/lib.rs:448 upload_ui:pixels: as_u32_slice(s.pixels()), w: s.width(), h: s.height()inside a struct literal;tools/editor-core/src/texture_lumps.rs:152,197,221:encode_texture_lumps(&[vec![def(...)]]);tools/geom-kernel/src/name8.rs:130:Name8::new(in a nested visitor impl. - Go generic instantiation call missed (gore, 1):
doom.go:33305 r_InitSpriteLumps:patch := w_CacheLumpNumT[*patch_t](...).
Context: gore vs linuxdoom cross-language consensus (625 shared functions, 1,233 shared edges, Jaccard 0.90) found 0 engine misses on either side; all 134 differing edges are real code differences (C macros FTOM/MTOF vs explicit FixedMul calls in Go, refactors).
Acceptance
- Tests per shape; the #5630 oracle reports 0 for them on the licensed Rust/Go ports; goldens with drift explained.
Prototype: /srv/storage_16tb/projects/gitgalaxy/doom-study/study-prototype/callcheck_rustgo2.py, gore_vs_linuxdoom.py.
🤖 Generated with Claude Code
- Lingua principale
- Python
- Stelle
- 57
- Fork
- 11
- Merge medio
- 1h 41m
- PR unite (30g)
- 978
Preparare l'ambiente
- Nessun Dockerfile né 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 squid-protocol/gitgalaxy
-
lane:nyx needs:corpus priority: medium testing
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
squid-protocol/gitgalaxy#5784 ·
I maintainer di solito rispondono entro 1 giorno
-
lane:nyx needs:corpus priority: medium testing
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
squid-protocol/gitgalaxy#5783 ·
I maintainer di solito rispondono entro 1 giorno
-
keyword-rosetta: ACS (acs) has no control folder; author data/acs/ and backfill its cost recordApertalane:nyx needs:corpus priority: medium testing
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
squid-protocol/gitgalaxy#5782 ·
I maintainer di solito rispondono entro 1 giorno
-
lane:nyx needs:corpus priority: medium testing
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
squid-protocol/gitgalaxy#5781 ·
I maintainer di solito rispondono entro 1 giorno
-
keyword-rosetta: F# (fsharp) has no control folder; author data/fsharp/ and backfill its cost recordApertalane:nyx needs:corpus priority: medium testing
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
squid-protocol/gitgalaxy#5780 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di squid-protocol/gitgalaxy
Issue simili
-
documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
I maintainer di solito rispondono entro 1 giorno
-
good first issue module-baseline needs triage ux
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
darnitdevorg/darnit#650 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
nyjc-computing/campus#938 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
nf-osi/nf-metadata-dictionary#1027 ·
I maintainer di solito rispondono entro 1 giorno
-
bug documentation
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
qatrackplus/qatrackplus#913 ·
I maintainer di solito rispondono entro 3 giorni