diff options
| author | Irene Knapp <ireneista@irenes.space> | 2026-05-15 22:17:53 -0700 |
|---|---|---|
| committer | Irene Knapp <ireneista@irenes.space> | 2026-05-15 22:17:53 -0700 |
| commit | 09ae826c2f99b7e21606e01f577b934c1d669bdc (patch) | |
| tree | 2ef48bbc5a7731efb29acae095eab065ecc21490 /transform.e | |
| parent | 447921598269bae3e1406470015c37f23943cc74 (diff) | |
the next-entry pointers in the generated dictionary work now
it was using the wrong value for the buffer start, messing up transform-offset Force-Push: yes Change-Id: I1d519b4de2df87930413ca440779337dbbe34d62
Diffstat (limited to 'transform.e')
| -rw-r--r-- | transform.e | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/transform.e b/transform.e index 154f477..d727d53 100644 --- a/transform.e +++ b/transform.e @@ -369,7 +369,8 @@ allocate-transform-state s" transform-state" variable ~ input string. It is directly analogous to "quit", in interpret.e, but is far ~ more complex. ~ -~ (output point, input string pointer -- output point) +~ (output buffer start, output point, input string pointer +~ -- output buffer start, output point) : transform main-input-buffer dup push-input-buffer ~ TODO the arguments for this seem to be backwards from the documentation @@ -382,7 +383,7 @@ allocate-transform-state s" transform-state" variable ~ loop, and set it back when the loop ends. here @ transform-state transform-state-saved-here ! latest @ transform-state transform-state-saved-latest ! - dup transform-state transform-state-output-buffer-start ! + over transform-state transform-state-output-buffer-start ! here ! 0 latest ! ~ Now the stack has nothing of ours on it, so client code can do its thing. |