diff options
| author | _ov4 <ov4@ov4.org> | 2026-10-13 08:44:16 +0000 |
|---|---|---|
| committer | _ov4 <ov4@ov4.org> | 2026-10-13 08:44:16 +0000 |
| commit | 58e2cfe505ba9942524f06bb1b1419e6c579efad (patch) | |
| tree | 9a9ec110ce429a4fe2014987423c30be505274ae /AGENTS | |
| parent | c6dbd14ec8ff94df47d3c2137cc5234203ec5e0c (diff) | |
fix: preserve 64-bit integers in NUM_TO_STR
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Diffstat (limited to 'AGENTS')
| -rw-r--r-- | AGENTS/PITFALLS.md | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/AGENTS/PITFALLS.md b/AGENTS/PITFALLS.md index 6d1b196..fd53883 100644 --- a/AGENTS/PITFALLS.md +++ b/AGENTS/PITFALLS.md @@ -29,8 +29,8 @@ test programs. must be a variable"; annotate `BYVAL` explicitly. - **`/` always yields REAL** (double FDiv), even for two INTEGERs; integer division is DIV/MOD only. CHR returns a STRING (2-byte heap buffer), not CHAR. STR_TO_NUM always - returns REAL. NUM_TO_STR formats i64 with sprintf `"%d"` — corrupts values over 32 - bits. + returns REAL. NUM_TO_STR formats INTEGER with sprintf `"%lld"` (the full signed + i64 range) and REAL with `"%f"`. - **`getExprTypeInfo` returns nullptr** for expressions it can't classify (null-check it at any new call site) and internally defaults to INTEGER for arithmetic binaries and unknown-function calls; OUTPUT reports an error for a nullptr result. |
