diff options
| author | _ov4 <ov4@ov4.org> | 2026-10-16 13:21:05 +0000 |
|---|---|---|
| committer | _ov4 <ov4@ov4.org> | 2026-10-16 13:21:05 +0000 |
| commit | e44bdc6a2a0cf624b08046ecc7e5c5d5d9d2d66c (patch) | |
| tree | f5276cc0dd2f34e4d30a58f80223912265a1c5a0 /AGENTS/PITFALLS.md | |
| parent | e1e789ac0249149a4aa1671f5f9260d488cb617a (diff) | |
fix(compiler): correct CIE semantics and diagnostic locations
Use standard WHILE headers and default-public class fields, resolve
pseudocode identifiers without case sensitivity, and check signed i64
literal boundaries before conversion. Preserve source locations across
recursive emission and function diagnostics.
Add 22 regression cases and update compiler examples and documentation.
Validated all 69 CTest entries with the original Linux Actions seed and
verified the release package's embedded, native and IR output paths.
Diffstat (limited to 'AGENTS/PITFALLS.md')
| -rw-r--r-- | AGENTS/PITFALLS.md | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/AGENTS/PITFALLS.md b/AGENTS/PITFALLS.md index 16fa16d..d2a24d4 100644 --- a/AGENTS/PITFALLS.md +++ b/AGENTS/PITFALLS.md @@ -75,9 +75,9 @@ test programs. already-invalid programs can hit it). - **CLASS subset (ยง10).** `CLASS`/`ENDCLASS`/`PUBLIC`/`PRIVATE` are reserved. - CLASS is a top-level record-derived value type with mandatory per-field access - keywords (no DECLARE). Unlike the guide's default-public rule, omitting access - is an error. TYPE fields cannot specify access and remain public. Private fields + CLASS is a top-level record-derived value type with optional per-field access + keywords (no DECLARE). Omitting access defaults to public, per the guide. + TYPE fields cannot specify access and remain public. Private fields cannot be accessed externally; whole-value initialization/copying is allowed. CLASS inherits record limitations, including no array fields or empty bodies. @@ -110,6 +110,6 @@ DATE, INPUT into array elements, string escape sequences, array-typed record fields, whole-array RETURN, class methods/constructors/destructors, NEW and class inheritance. Compiler fixtures now live in `tests/` (see TESTING.md). Nightly CI runs the compiler suites, packaged EMBEDDED smoke checks and existing -plugin tests. The initial compiler suite intentionally exposes existing standard -conflicts and missing diagnostic locations; see `tests/FAILURES.md` before interpreting -a failing baseline. Keep those failures visible until their implementations are fixed. +plugin tests. The initial standard conflicts and missing diagnostic locations are fixed on +Linux; see `tests/FAILURES.md` for the historical baseline and coverage gaps. +WHILE uses the standard header without DO; old WHILE DO programs must be migrated. |
