Skip to content

Branch to make i64 paths into bigint for very large environments - #423

Merged
prozacchiwawa merged 5 commits into
mainfrom
20260403-path-fix
Apr 6, 2026
Merged

prozacchiwawa merged 5 commits into
mainfrom
20260403-path-fix

Conversation

@prozacchiwawa

@prozacchiwawa prozacchiwawa commented Apr 3, 2026 •

Copy link
Copy Markdown
Contributor

Note

Medium Risk
Changes environment path computation/encoding in codegen to avoid overflow on large environments, which can affect compiled output across dialect versions. While guarded by stepping/version logic and covered by a regression test, it touches core compilation behavior.

Overview
Fixes an overflow bug in environment path lookup during codegen by switching the internal path accumulator from u64/i64 math to Number/bigint math, and adds a compatibility shim (early_stepping_truncate_to_u64) to preserve pre-cl-26 output encoding.

Introduces the *standard-cl-26* dialect (and bumps MAX_STEPPING to 26) and adds a regression test plus fixtures (test-env-overflow.clsp, test-env-overflow-cl24.hex) that compile/run a large-environment program to validate both the corrected cl-26 behavior and stable legacy cl-24 output.

Reviewed by Cursor Bugbot for commit b485352. Bugbot is set up for automated code reviews on this repo. Configure here.

@prozacchiwawa
prozacchiwawa marked this pull request as ready for review April 6, 2026 07:00
@prozacchiwawa
prozacchiwawa merged commit 89bffe9 into main Apr 6, 2026
35 checks passed
@prozacchiwawa
prozacchiwawa deleted the 20260403-path-fix branch April 6, 2026 15:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants