aboutsummaryrefslogtreecommitdiff
path: root/AGENTS/ARCH/OVERVIEW.md
diff options
context:
space:
mode:
author_ov4 <ov4@ov4.org>2026-10-21 12:49:21 +0000
committer_ov4 <ov4@ov4.org>2026-10-21 12:49:21 +0000
commitbb1244aaef910579d829eb1563365479860ae7e1 (patch)
tree6e8a95fcbb3942907f5d7229b16a65d1e08dd462 /AGENTS/ARCH/OVERVIEW.md
parent97f743a41925e4346aa2c08f23ba432072318eca (diff)
docs(agents): collapse duplicated passages into single-home links
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Diffstat (limited to 'AGENTS/ARCH/OVERVIEW.md')
-rw-r--r--AGENTS/ARCH/OVERVIEW.md2
1 files changed, 1 insertions, 1 deletions
diff --git a/AGENTS/ARCH/OVERVIEW.md b/AGENTS/ARCH/OVERVIEW.md
index 5bb4a86..820c5bb 100644
--- a/AGENTS/ARCH/OVERVIEW.md
+++ b/AGENTS/ARCH/OVERVIEW.md
@@ -12,7 +12,7 @@ files ──> Lexer ──> Parser ──> vector<unique_ptr<StmtAST>> ──> C
```
Fixed value representation (ABI — much code infers types backwards from these):
-INTEGER = `i64`, REAL = `double`, BOOLEAN = `i1`, CHAR = `i8`. STRING is the standard-library class `%record.STRING`, owning a std::string handle; C_STRING is a raw NUL-terminated pointer. User-defined types (§4): enum = `i64` (0-based ordinal),
+INTEGER = `i64`, REAL = `double`, BOOLEAN = `i1`, CHAR = `i8`. STRING is the standard-library class `%record.STRING` (not a builtin pointer type), owning a std::string handle; C_STRING is a raw NUL-terminated pointer. User-defined types (§4): enum = `i64` (0-based ordinal),
pointer = opaque `ptr`, record = named struct `%record.NAME`. Enums and pointers are LLVM-identical to INTEGER/C_STRING **by design** — their identity lives in the type
*name*, enforced upstream (see [CONVENTIONS/TYPES.md](../CONVENTIONS/TYPES.md)). Allocation byte sizes are never computed
host-side: the module has no DataLayout string, so every allocation size is a null-GEP