Make PARSE/PARSE-NAME inline host functions, fix stack residue cascade

PARSE and PARSE-NAME were using the deferred pending mechanism which
broke when called from compiled code (the calling word continued
executing before PARSE ran). Replaced with inline host functions that
read >IN/#TIB directly from WASM memory and parse immediately.

This fixes utilities.fth $"/$2" failures that left stack residue
cascading into all subsequent compliance test suites.

Also: core_ext 17→14, string 27→17.
This commit is contained in:
2026-04-08 10:31:46 +02:00
parent 357bbc2ee9
commit b8c9f1f9f9
4 changed files with 196 additions and 8 deletions
+18
View File
@@ -0,0 +1,18 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>WAFER - test_js.wasm</title>
<style>
body { font-family: monospace; background: #1a1a2e; color: #e0e0e0; padding: 2em; }
#output { white-space: pre-wrap; font-size: 1.2em; padding: 1em; background: #16213e;
border: 1px solid #0f3460; border-radius: 4px; min-height: 4em; }
</style>
</head>
<body>
<h2>WAFER Output</h2>
<div id="output"></div>
<script src="test_js.js"></script>
<script>WAFER.run();</script>
</body>
</html>