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
{{ message }}
Repository navigation
Instances passed to nested components keep the caller's type #14853
When an outer component instantiates an inner one, the instance passed for an inner import isn't re-typed to the inner component's declared import type. If the inner component re-exports that import, the re-export takes its type and attributes from the outer argument:
Wasmtime reports out/n as implementing p:q/r (the inner component declared x:y/z), and out has an extra export that the inner component never declared and that the host can look up. wasmparser's types for the same component have n implementing x:y/z and no extra.
The argument seems to be pushed as-is in inline.rs (frame.push_item(arg.clone())), and record_export then takes nested attributes from the outer type.
Activity
Add a test for instances passed to nested components
Respect type ascriptions on component exports (bytecodealliance#14865)