From 70361dab75dd03c17df24a807859135fc423e766 Mon Sep 17 00:00:00 2001 From: Irene Knapp Date: Mon, 21 Sep 2026 17:41:43 -0700 Subject: change sys-write and sys-read to take file descriptors and also sys-write didn't used to return a result this required a little massaging to make it build, the host evoke needed to not actually pass the file descriptor in evoke.e. for posterity: this was fixed by changing it everywhere else as a one-off, then changing it there and using the intermediate version to build the one being checked in now. this kind of weirdness is a thing we get the freedom to do because of the bootstrapped distribution model, though we still strongly prefer not to do it unless necessary. this breaking change would have had to happen at some point, so it's considered acceptable. the size of the diff to evoke.hex is larger than ideal. this raises the need to have a policy for when to regenerate it. since this is a breaking change, it's mandatory. it also seems important to commit a regenerated copy when a release is tagged. it will probably turn out to be a good idea to not regenerate it excessively, otherwise. it's possible that in the long run it might make sense to add name-mapping functionality to hex, just to make the diffs smaller. Force-Push: yes Change-Id: I2648b2577c5c21b126e46405e9888b5cb59aa0b7 --- output.e | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'output.e') diff --git a/output.e b/output.e index b7c4dc7..156c7a8 100644 --- a/output.e +++ b/output.e @@ -14,7 +14,7 @@ ~ Strings are comparatively easy. ~ ~ (string pointer --) -: emitstring dup stringlen swap sys-write ; +: emitstring dup stringlen swap 1 sys-write drop ; : space 32 value@ emitstring drop ; : newline 10 value@ emitstring drop ; -- cgit 1.4.1