Finch/tests/run/pointers.fch
Nexoniarz f897fb3140 Rename the Finch file extension from .fn to .fch
.fn is already used by other tools (e.g. Fennel). Modules are now looked up as name.fch;
a leftover name.fn gets a clear message telling you to rename it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 19:27:42 +02:00

25 lines
407 B
Text

fn double(ptr[int] p) {
p.value = p.value * 2
}
fn swap(ptr[int] a, ptr[int] b) {
t := a.value
a.value = b.value
b.value = t
}
fn main() {
x := 21
double(addr(x))
print(x)
a := 1
b := 2
swap(addr(a), addr(b))
print(a, b)
p := addr(a)
pp := addr(p)
pp.value.value = 99
print(a)
ptr[int] none = null
print(none == null, p != null, none)
}