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
Add support for implicit upcasting when an interface embeds another
interface (including transitive chains like Dense -> Solid -> Base).
- checker: `interface_embeds_interface_recursive` walks the embed tree
to accept the upcast instead of erroring with "cannot implement
interface with a different interface".
- cgen: `expr_with_cast` emits `I_<Got>_as_I_<Exp>(...)` conversion
calls for interface-to-interface casts, skipping the branch when
either side carries `shared_f` so the existing shared-container
path handles those.
- cgen/fn: `v_typeof_interface_` helpers now return `string` (via
`_S(...)`) instead of `char *`, fixing charptr/string mismatches.
- vfmt/parser: preserve attribute call syntax (`@[attr(...)]`) through
format round-trips.
- closure: keep ppc64 bootstrap-compatible by guarding arch-specific
trampoline code.
Fixes#26759.
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
0 commit comments