wit-bindgen
wit-bindgen copied to clipboard
Conflicting implementations of `StreamPayload`
This:
wit_bindgen::generate!({
inline: r#"
package a:b;
world w {
import i;
export i;
}
interface i {
use t.{r};
f: func(p: stream<r>);
}
interface t {
record r {
x: u32,
}
}
"#,
});
fn main() {}
fails with:
$ cargo build --target wasm32-wasip1
Compiling wat v0.1.0 (/home/alex/code/wat)
error[E0119]: conflicting implementations of trait `StreamPayload` for type `t::R`
--> src/main.rs:1:1
|
1 | / wit_bindgen::generate!({
2 | | inline: r#"
3 | | package a:b;
... |
20 | | "#,
21 | | });
| | ^
| | |
| |__first implementation here
| conflicting implementation for `t::R`
|
= note: this error originates in the macro `wit_bindgen::generate` (in Nightly builds, run with -Z macro-backtrace for more info)
For more information about this error, try `rustc --explain E0119`.
error: could not compile `wat` (bin "wat") due to 1 previous error