Add a bounded linker-script structure view for MEMORY SECTIONS and ENTRY

Aperta
#74 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
64/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
kotlin

Direzione di ricerca

Start from the linked LinkerScriptLexer.kt to see how tokens are already produced, then find where Wave registers structure/navigation for linker scripts under plugins/wave/src/main/kotlin/dev/wavelang/intellij/wave/ld/. Build a bounded parser over that lexer that reports MEMORY regions, SECTIONS entries and ENTRY declarations with exact source ranges and degrades gracefully on nested braces, comments, strings and incomplete expressions. Done means the structure view lists these against small kernel/freestanding fixtures plus a short supported-syntax description, with no expression evaluation and location-counter fixes left to #5.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

editor enhancement help wanted linker priority medium

Problem / current evidence

WfP currently colors GNU-style linker-script keywords but has no structural representation. Compiler developers need to locate memory regions, output sections and entry declarations.

Code and contract references

Scope / proposed contract

Introduce a documented GNU-compatible subset sufficient for outline/navigation. Preserve unsupported expressions as editable text; do not claim this is a Whale linker-script interpreter.

Completion criteria

  • List named MEMORY regions, SECTIONS entries and ENTRY declarations with exact source ranges.
  • Handle nested braces, comments, strings and incomplete expressions without unbounded parsing.
  • Do not evaluate layout expressions or declare a script linkable merely because it parses.
  • Keep standalone location-counter token fixes in existing #5.
  • Use representative kernel/freestanding fixtures and a small supported-syntax description.

Dependencies and boundaries

  • Reuse/coordinate with existing WfP work: #5.
  • Ecosystem index: #49; existing foundations: #8.

Difficulty

Medium — requires understanding the affected tool or platform integration.

Audit baseline: Wave 509a1e46; Whale e3a12d08; Vex 71f29daa; WfP 2804fc02. This issue records source-audit findings and proposed work; no implementation or new execution is claimed. The checks above are future acceptance criteria. Prefer small fixtures and targeted validation; full builds or real debugger/IDE sessions should be explicit and necessary.

Lingua principale
Java
Stelle
0
Fork
3
Merge medio
8h 8m
PR unite (30g)
1

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di wavefnd/wave-for-platform

Tutte le issue di wavefnd/wave-for-platform

Issue simili

Altre issue su Java

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.