You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
format!("const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, {size}, {align}, false);")
.into()
);
This appears to unconditionally use a DiplomatReceiveBuf (for multi-valued-returns that get turned into outparams) even for structs that are a ultimately wrapping a single outparam.
I believe the Wasm ABI only does the multi-value outparam when the result type has multiple scalar fields. I think CyclicStructA/CyclicStructB may already exercise this use case, so the first step would be checking if tests written around those types work.
When fixing this we should also inspect the nearby DiplomatResult code which may also have bugs around this.
The text was updated successfully, but these errors were encountered:
diplomat/tool/src/js/type_generation/converter.rs
Lines 370 to 373 in f6cb561
This appears to unconditionally use a DiplomatReceiveBuf (for multi-valued-returns that get turned into outparams) even for structs that are a ultimately wrapping a single outparam.
I believe the Wasm ABI only does the multi-value outparam when the result type has multiple scalar fields. I think CyclicStructA/CyclicStructB may already exercise this use case, so the first step would be checking if tests written around those types work.
When fixing this we should also inspect the nearby DiplomatResult code which may also have bugs around this.
The text was updated successfully, but these errors were encountered: