PBXA32 V2
V2 — Release 05.08.2026
Eine vollständige x86-32 Compiler-Pipeline geschrieben in ISO C11. Von PowerBASIC-Quellcode durch Präprozessor, Lexer, Parser, semantische Analyse, IR, x86-Codegenerierung, COFF-Assemblierung und PE32-Linking — alles in einer Toolchain. Keine C++-Abhängigkeiten. Keine GNU-Erweiterungen. Reines, standardkonformes C11, das native Windows PE32-Executables erzeugt.
PBX-Compiler-Paket: 62,5 MB (ZIP) — PBXA32, PBXA64, PBXB64 und ScharffBasic inklusive PBX-Editor, CHM-Hilfe (DE+EN), 400 Beispiele, 354 Includes und 34 C17-Header
Geschrieben in ISO C11 (kein C++, kein GNU)
Ziel: x86-32 / PE32
Smoke 87/87, Staged 173/173, CTest 68/68
PBXA32.exe Authenticode-signiert (Certum, SHA-256-Zeitstempel)
Was V2 neu bringt
Seit V1 wurde PBXA32 an der Parameter-ABI, in der Laufzeit und in der Diagnostik gehärtet und liegt seit dem 05.08.2026 erstmals als vollständig qualifiziertes, signiertes Release vor.
Reparierte BYREF- und ABI-Pfade
BYREF-Lese- und -Schreibzugriffe über die gemeinsame Parameter-ABI, XTHREAD-Callback-Parameterübergabe, Managed-String-Zeiger bei LINE INPUT und Parser-Aufrufzeiger nach AST-Speicherwachstum.
Typisierte Arrays und Mathematik
Typisierte TAGARRAY-Kompilierung und -Laufzeit, korrekte DOUBLE-Array-Elementabbildung sowie SINCOS-Zieltyp-Wiederherstellung und konsistentes Math-Array-Verhalten.
Stress- und Robustheits-Abdeckung
Dauerhafte Deep-Nesting-Abdeckung und Name-Pool-Behandlung, begrenzte Timeouts in den Fuzz-, Math- und PE-Validierungs-Lanes sowie FOR-Schleifen- und Managed-Allocation-Stressrunner.
CBC-Vertrag und Diagnosen
Der CBC-Vertrag ist als numerische PBXA32-Erweiterung geschlossen; nicht unterstütztes CBCT schlägt fail-closed mit expliziter Zurückweisung fehl. Division-durch-Null-Diagnosen, veraltete Negativ-Test-Fixtures geschlossen.
Neue Hilfe, deterministisches Paket
Die CHM-Hilfe wurde neu erstellt. Das Endanwender-Paket entsteht deterministisch und wird durch ein SHA-256-Manifest abgesichert.
Qualifiziert und signiert
Smoke 87/87, Staged 173/173, CTest 68/68, CBC/CBCT 28/28, negative Diagnosen 59/59, Paket-Selbsttest 3/3. PBXA32.exe ist Authenticode-signiert (Certum, Sectigo SHA-256-Zeitstempel) und erzeugt native Windows-x86-Executables ohne externen Compiler oder Runtime.
Warum PBXA32 wichtig ist
Reine C11-Implementierung
Der gesamte Compiler - Lexer, Parser, Präprozessor, Codegenerator, Assembler, Linker und Laufzeit - ist in standardkonformem ISO C11 geschrieben. Kein C++. Keine GNU-Erweiterungen. Der Build funktioniert mit C11-kompatiblen Compilern wie MinGW-w64, MSVC und Clang.
Vollständige x86-32-Pipeline
Alle sieben Compilerstufen sind implementiert und getestet. PowerBASIC-Syntax wird tokenisiert, in einen AST überführt, in IR abgesenkt, zu x86-Maschinencode verarbeitet, als COFF-Objekt ausgegeben und zu PE32 gelinkt - ein vollständiger Compiler in C.
PowerBASIC-kompatibel
Unterstützt Direktiven (#COMPILE, #INCLUDE, #DIM), Prozeduren (FUNCTION, SUB, CALLBACK), Kontrollfluss (IF, SELECT, FOR, DO, WHILE), Sprünge (GOTO, GOSUB), Aggregate (TYPE, UNION, ENUM) und klassische Typsuffixe (% & && ! # $ @).
Subsystem-Smoke-Tests
Jede Stufe besitzt einen eigenen Smoke-Test. Lexer, Parser, Assembler oder Linker können unabhängig getestet werden, damit Fehler auf ihre jeweilige Schicht eingegrenzt werden können, ohne vollständige Programme zu kompilieren.
Kurzes Beispiel
Abgeschlossene Subsysteme
| Stufe | Status | Beschreibung |
|---|---|---|
| Präprozessor | Vollständig | Makroexpansion, bedingte Kompilierung (#IF/#ENDIF), Datei-Includes |
| Lexer | Vollständig | PowerBASIC-bewusste Tokenisierung mit vollständiger Unterstützung numerischer Literale |
| Parser | Vollständig | Rekursiver Descent-Parser zum Aufbau des vollständigen AST |
| Semantik | Vollständig | Typsystem, Symbole und Analyse |
| IR | Vollständig | IR-Modul und Absenkung |
| CodeGen | Vollständig | Generator für x86-Maschinencode aus der IR |
| Assembler | Vollständig | x86/COFF-Assembler und Objekt-Writer |
| Linker | Vollständig | PE32/i386-Linker mit Unterstützung für Imports |
| Laufzeit | Vollständig | Laufzeitbibliothek für kompilierte Programme |
| Optimizer | 4 Stubs | Optimierungspipeline vorbereitet und bereit für weitere Pässe |
Architektur — Von der Quelle zu PE32
PBXA32 jetzt im PBX-Compiler
PBXA32 V2 (Release 05.08.2026) steht im PBX-Compiler zum Download bereit — zusammen mit PBXA64, PBXB64, ScharffBasic und dem PBX-Editor.
Private Nutzung kostenlos, Business sauber lizenziert
Private Nutzung ist kostenlos. Business-, Team- und kommerzielle Nutzung läuft über Smart Package Robot.
Download-Entwicklung
Tägliche Abrufe aller angebotenen Downloads der letzten 28 Tage (rollierend). Jede Download-Datei ist dauerhaft durch eine eigene Farbe gekennzeichnet.