Closed usuyuki closed 10 months ago
int32でやってみる.
module分けてるので競合するはずがないのに,競合扱いにされるのでコンパイルの過程のバグの可能性が高い.
型を一致させたらrandomのimportは消え,WebAssembly内に実装されるようになった……
tinygo:wasm-ld: warning: function signature mismatch: random
>>> defined as () -> i64 in lto.tmp
>>> defined as () -> i32 in /opt/usuyuki/homebrew/Cellar/tinygo/0.30.0/lib/wasi-libc/sysroot/lib/wasm32-wasi/libc.a(random.o)
そもそもwasiのrandはまだないはずでは…… https://github.com/WebAssembly/wasi-random Phase 3の状態.
randomArduinoと名前を変えることで対処. 全部変えることになるが,WebAssemblyでのimportの名前なので記述する上では変わらないのでユーザー影響なし.
🐛 概要
原因
tinygoで指定できるのがwasmかwasiで,どっち指定しても暗黙的にwasiが読まれているっぽい?
備考
この結果,wasm上でただしくimportが生成されず
となる.