From ed7da0d9e31e8dd6847e2e603f0d1943330cf4d0 Mon Sep 17 00:00:00 2001 From: Kimplul Date: Fri, 13 Mar 2026 14:07:29 +0200 Subject: add initial reference invalidation + Makes vec example actually memory safe, which is cool + Specify owner > sub relationships with ">" in closure parameter lists, uses the same group idea as closure calls + Relies on users implementing functions in a consistent manner, since you can kind of do whatever with pointers. Presumably there would be a stdlib of vec/map/set etc. which applications could then use and by proxy be memory safe. Although some more checks wouldn't hurt, I suppose? + Not sure I like having reference invalidation be 'just a move', seems to work alright but the semantics of it are a bit muddy. --- src/parser.y | 1 + 1 file changed, 1 insertion(+) (limited to 'src/parser.y') diff --git a/src/parser.y b/src/parser.y index 6210a95..776e1c9 100644 --- a/src/parser.y +++ b/src/parser.y @@ -289,6 +289,7 @@ type rev_types : rev_types "," type { $$ = $3; $$->n = $1; } + | rev_types ">" type { $$ = $3; $$->n = $1; own_type_group($1, $3); } | type types -- cgit v1.2.3