31 lines
1.8 KiB
Markdown
31 lines
1.8 KiB
Markdown
## Why
|
||
|
||
Mehrere Module/Formulare werden zu einem Quelltext und globalen Objektraum zusammengelegt. Dadurch scheitern formularlokale Namen, Fehlerorte stimmen nicht und FRM-Anfangswerte fehlen nach dem Kompilat-Rundlauf (F09–F11); Containerdokumentation und Spec sind außerdem überholt (F24). Siehe [Review vom 05.09.2026](../../../../docs/reviews/2026-09-05-openspec-code-review.md).
|
||
|
||
## What Changes
|
||
|
||
- Projekt- und Include-Quellen mit ursprünglichem Modul/Datei/Zeile erhalten und Prozeduren/Controls im jeweiligen Namensraum auflösen.
|
||
- Quellorte und Breakpoints mit Modulidentität durch Frontend, Kompilat und VM führen.
|
||
- Formularbeschreibungen und Anfangswerte in das eigenständig ladbare Kompilat aufnehmen.
|
||
- **BREAKING**: Kompilatversion für das vollständige Projektmodell erhöhen; ältere Versionen weiterhin klar mit Versionsnennung ablehnen.
|
||
- Container-/Opcode-Spezifikation und Dokumentation an das tatsächlich vereinbarte Format angleichen.
|
||
|
||
## Capabilities
|
||
|
||
### New Capabilities
|
||
|
||
Keine neuen Capability-Pfade.
|
||
|
||
### Modified Capabilities
|
||
|
||
- `bytecode-kompilat`: Eigenständiges Projektkompilat, vollständige Quellorte und dokumentiertes Containerformat.
|
||
- `sprach-frontend`: Projektübergreifende Diagnostik und formularlokale Objektauflösung.
|
||
- `forms-objektmodell`: Gleichnamige Controls unterschiedlicher Formulare separat adressieren.
|
||
- `vm-ausfuehrung`: Breakpoints und Inspektion über Modulidentität ermöglichen.
|
||
|
||
## Impact
|
||
|
||
CLI input_sources/expand_includes, Frontend SourcePos/HIR/FormCatalog, Codegen/bytecode/interp, FRM-Anwendung, Tests und docs/tbvm-design.md/dateiformate.md. Kein neuer Linker als separater Prozess.
|
||
|
||
Eigenständiger Compiler-/Container-Change. Nach Ereigniszustellung integrieren, falls beide interp.rs ändern. F24 und alle Bytecode-Requirement-Blöcke gehören ausschließlich hierher.
|