Home › Version History
PBXB64 Compiler Help

Version History

Release history and version milestones for the PBXB64 compiler. The Z-series are internal Z-milestones (development drops). The V-series are user-facing release drops. Each row in the table below corresponds to a tag in the repository's version history.

Current Version: 0.50.0-V14 (Release V14) Current Version: 0.50.0-V14 (Release V14) — 2026-07-07
mdash; 2026-07-07
Implementation: Pure C11 (no C++ dependencies)
Target: Windows x64 PE32+ / COFF object files
Languages: PowerBASIC-compatible BASIC, B64, C17, inline ASM
Test matrix: 1838/1846 (8 expected fails, 0 unexpected failures, result PASS) — 974 assembly, 193 PB link+run, 22 B64 link+run, 106 C compile, 6 C link+run, 526 generated, 19 pilot link+run

Version Milestones

54
MilestoneDateLaneKey Features
Z582026B64B64 frontend routes through b64_frontend_build_ir() before optimization. --emit-ir / --dump-ir are split. Integer global initializers emit bytes into .data / .rdata.
Z58–Z602026PBAll PB statement handlers rewritten to use pb_try_eval_expr() instead of pb_eval_expr(). Real handlers for DIALOG, CONTROL, TCP/UDP, HOST, THREAD, REGISTER, COMM, MOUSEPTR, PROCESS, LPRINT, XPRINT, GUI, DISPLAY, FONT, MENU, GRAPHIC.
Z602026all4-track known-limitation sweep. B64 examples 11/11, PB Link+Run 6/6, C compile 63/63, C link+run 1/1. Runtime stubs replaced with real Win32 calls.
Z612026PB / linkWin64 multi-arg ABI fix (5+ args), IR_OP_REM correctness (CQO/IDIV implicit readers), FOR loop body const-fold fix, link-symbol sweep (25 missing runtime symbols added). Float FOR loop, negative STEP, CURRENCY type coverage.
Z642026all25-bug sweep. PB frontend codegen (12), crash fixes (3), type system fixes (3), B64 frontend fixes (4), diagnostic fixes (3). 318/318 tests green. V3 release.
Z652026H-Lib10 native H-Lib container families: Arr, Stk, Que, Lst, Str, 2D, Hsh, Tre, DTre, Tri. Method-dispatch syntax, auto-init on entry, auto-finalize on scope exit. 12 container test files pass.
Z662026runtimeMinGW snprintf crash fix, build script robustness, user-runtime helper object (c_runtime_user.c). P0 runtime: ERROR$, UCODE$ / UCODEPAGE, PRINT USING.
Z672026H-LibH-Lib Phase 7 — UDT payload containers. AS LNARR OF MyType, AS LNLST OF MyType, etc. Container + UDT integration.
Z682026CH-Lib Phase 8 — C-frontend parity. core/include/c17/pbxb64/hlib.h exposes c_hlib_lnarr_* symbols. C Link+Run lane 1/1 → 2/2.
Z692026PB / H-LibSortUsing callbacks + CODEPTR. Comparator-driven sort with CODEPTR(CompareFn). Real function-address extraction in IR.
Z702026PB / VVARIANT completeness sweep. Variant scalars/arrays, deep-copy lifecycle, FOR-loop memory-corruption fix. Variant stress test.
Z712026H-LibH-Lib Phase 10 — [] subscript access. a[1] = 100, n = h["k"]. sys_date_time_environ_command runtime completion.
Z722026H-LibH-Lib Phase 11 — Heap, Deque, Set, Graph container families.
Z732026H-LibH-Lib Phase 12 — Multiset, UnionFind, LRU, Ring, SkipList, B+Tree, Quadtree, Bloom, Safe container families. 23 families total.
Z742026PBGenerated PB system regression sweep. Hardened DATE$/TIME$, COMMAND$/ENVIRON$, MOUSEPTR, PROCESS PRIORITY, UCODE$/UCODEPAGE. Float-register-lifetime bug fixed.
Z752026PBReal RND, RANDOMIZE, INKEY$, WAITKEY$ user runtime. LCG-based RNG with deterministic seed; Win32 console-input reads (PeekConsoleInputA / ReadConsoleInputA).
Z762026allV5 ship-readiness sweep. INTEGER byte-size consistency, removed stale core/source/include/compiler/frontend/pb_ast.h. RESET, LIKE, FRAC, TIX, RND/RANDOMIZE replaced with real implementations. 1591/1591 tests, 0 expected fails.
V62026-06-14distFirst public release of the V-series distribution. Compressed single-binary PBXB64.exe (~919 KB), includes PBXB64_Help.chm.
V72026-06-15distUpdated H-Lib coverage and command-line option documentation. -E preprocessor mode, -I / -isystem search paths.
V82026-06-17coreWide-integer 128/256/512-bit native types (INT128 / UINT128 / INT256 / UINT256 / INT512 / UINT512) with inline arithmetic. Print support for all wide-integer types. Assembler global directive fix.
V8.12026-06-18coreMSGBOX ? shorthand alias (PB/CC compatible). TBOX timed message box with [d] timeout marker and auto-dismiss thread.
V122026-06-25core / distWSTRING binary I/O (PUT$$ / GET$$ / PUT$$# / GET$$# builtins, PUT # / GET # statement WSTRING support). Linker import table fixes: WSAGetLastErrorws2_32.dll, __acrt_iob_func → CRT DLL. GEP byte-offset scaling fix for dynamic file-handle slot lookup. FILEATTR(#n, 1) now returns actual OS handle. New science types: DEC128 (16-byte decimal fixed-point, 18-digit precision) and RATIONAL (exact rational arithmetic, automatic GCD normalization). Digitally signed with Certum Code Signing CA. 1838/1846 tests passing, 8 expected fails, 0 unexpected failures.
V132026-06-29core / distFixed-point optimizer pipeline (all passes iterate to convergence, capped at 10 iterations). Loop preheader insertion (enables LICM on real loops). Unsigned division-by-constant strength reduction (UMULH + shift sequence, ~14x faster than IDIV). Improved inlining (corrected ARG-ID mappings, CONST operand protection). UPX-packed binary (27.5% compression). No regressions from V12 baseline: 1182/1185 Assembly, 98/98 PB, 22/22 B64, 2/2 C Link+Run.
V102026-06-21help / coreUnified help file quality sweep plus PB correctness and feature-completion sweep. Added 47 detailed command-line option pages, fixed 3 broken ASM instruction links (CLD, MOVS, STOS), added POPA/PUSHA/STD pages, updated PILOT command stubs. Boolean semantics aligned to PB (-1/0), numeric MIN/MAX n-arg lowering, colon-boundary error recovery, TXT handle parser fix, hybrid directive skipping. Validation lane: 1838/1846 tests, 8 expected fails, 0 unexpected failures. Rebuilt PBXB64_Help.chm with zero compiler warnings and full search/index coverage.

Compiler Characteristics (V14)

What Was Deferred (V6 and Beyond)

See Also

Back to command index