aboutsummaryrefslogtreecommitdiff
path: root/AGENTS/SUBSYSTEMS
AgeCommit message (Collapse)Author
2026-10-30docs(types): explain implicit constructors and raw text literalsHEADmain_ov4
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28docs(overload): document default return selection_ov4
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27docs(preprocessor): document switches and library regions_ov4
Add manuals and aliases for all five PP directives, replace the retired #LIB page, and update compiler and shared-editor architecture notes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27docs(memory): describe standard-library allocation and explicit imports_ov4
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24docs(overload): document return-type selection across keyword pages_ov4
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24feat(overload): select overloads by return type as well as parameters_ov4
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22feat(input)!: validate INPUT and read whole lines into STRING_ov4
Scalar INPUT now reads one whitespace-delimited token through module-local IR helpers instead of scanf, then skips spaces and tabs and consumes one newline. INTEGER, REAL, BOOLEAN (TRUE or FALSE in any case) and CHAR are validated, and bad input or end of input is a runtime error. STRING INPUT reads the rest of the line. The unused scanf and REAL printf format globals are removed. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22fix(classes): defer NEW for DECLARE without a parameterless constructor_ov4
A plain DECLARE, field or array element now calls NEW only when the class has a parameterless one; otherwise the zeroed object waits for x <- NEW C(...), as in guide section 10.2. DECLARE with parentheses still requires a matching constructor. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22fix(arrays): free array buffers when their scope ends_ov4
Register every array as a stack object so its buffer is freed on scope end, re-DECLARE, RETURN and unwinding; run the element-destroy loop only for types that need destruction. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22fix(arrays): reject inverted bounds and check array allocation_ov4
Constant inverted bounds are a compile error and other bounds are checked at run time. Allocation sizes use overflow-checked arithmetic, and a NULL malloc (including the BYVAL copy) reports that the array is too large. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22fix(driver): cache the embedded standard library per user_ov4
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22docs: document C-struct records for EXTERN_ov4
Describe which TYPE records count as C structs, passing them by value and by pointer as parameters, RETURNS and variadic arguments, and the recursive pointer types EXTERN accepts. Note the clangCodeGen dependency and the CABI sources in the architecture notes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21docs(agents): collapse duplicated passages into single-home links_ov4
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-21docs(agents): link plain-text references to the split topic files_ov4
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-21docs(agents): dedupe library units and move macOS CI caching into NIGHTLY_ov4
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-21docs(agents): split SUBSYSTEMS.md into topic files under AGENTS/SUBSYSTEMS_ov4
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>