summary refs log tree commit diff stats
path: root/src/main/kotlin/space/autistic/radio/wasm
diff options
context:
space:
mode:
authorSoniEx2 <endermoneymod@gmail.com>2025-03-15 22:47:10 -0300
committerSoniEx2 <endermoneymod@gmail.com>2025-03-15 22:47:10 -0300
commit1b4e672a4580e2d38edcd06510dabb45359f162b (patch)
treee8991c94e57c61fd1287f31a71261230c71b4f18 /src/main/kotlin/space/autistic/radio/wasm
parent2aa1dea5126290ee6dadc0884a3d8e2791be04ef (diff)
Make flite work
Diffstat (limited to 'src/main/kotlin/space/autistic/radio/wasm')
-rw-r--r--src/main/kotlin/space/autistic/radio/wasm/Bindings.kt5
-rw-r--r--src/main/kotlin/space/autistic/radio/wasm/WasmExitException.kt4
2 files changed, 9 insertions, 0 deletions
diff --git a/src/main/kotlin/space/autistic/radio/wasm/Bindings.kt b/src/main/kotlin/space/autistic/radio/wasm/Bindings.kt
index cc123a1..5ff4102 100644
--- a/src/main/kotlin/space/autistic/radio/wasm/Bindings.kt
+++ b/src/main/kotlin/space/autistic/radio/wasm/Bindings.kt
@@ -141,6 +141,11 @@ class Bindings {
                     Value.EMPTY_VALUES
                 }
 
+                Void::class.java -> HostFunction(module, name, wasmParameters, emptyList()) { instance, args ->
+                    handle.invokeExact(instance, args)
+                    throw IllegalStateException("unreachable")
+                }
+
                 Int::class.java -> HostFunction(module, name, wasmParameters, listOf(ValueType.I32)) { instance, args ->
                     val result: Int = handle.invokeExact(instance, args) as Int
                     longArrayOf(result.toLong())
diff --git a/src/main/kotlin/space/autistic/radio/wasm/WasmExitException.kt b/src/main/kotlin/space/autistic/radio/wasm/WasmExitException.kt
new file mode 100644
index 0000000..43c08be
--- /dev/null
+++ b/src/main/kotlin/space/autistic/radio/wasm/WasmExitException.kt
@@ -0,0 +1,4 @@
+package space.autistic.radio.wasm
+
+class WasmExitException(val status: Int) : Exception() {
+}