将moonbit函数作为回调函数传递给js使用

测试在firefox中使用正常,然后在edge(版本 131.0.2903.63 (正式版本) (64 位))里面就报错了,chrome(版本 131.0.6778.86(正式版本) )也是一样报错,完整代码如下

fn main {
  set_callback(fn(x,y)->Int{
    x+y
  })  
}

fn set_callback(f: (Int,Int)->Int)->Unit= "ffi" "set_callback"
<!DOCTYPE html>
<html>
    <!-- <head>
        <script src="dxwebApp.js" type="module"></script>
    </head> -->
    <body>
        <script type="module">    
            let f=undefined        
            let importobj ={
                "moonbit:ffi": {
                    "make_closure": (funcref, context) => funcref.bind(null, context)
                },
                // 使用示例
                "ffi": {
                    "set_callback": (func) => { f = func; }, // 设置回调函数
                    "use_callback": () => f(2,3) // 使用回调函数
                }
            }
            const { instance } = await WebAssembly.instantiateStreaming(fetch("/target/wasm-gc/release/build/main/main.wasm"),importobj);
            instance.exports._start();
            alert(f(34,66))
            alert(importobj.ffi.use_callback());
        </script>
    </body>
</html>

错误的结果是执行函数
alert(f(34,66))这里报告类型不兼容
image

感谢报告。已提交 Chromium 官方 Chromium