julia
8c3534a9 - base: Honor @nospecialize on the owner-carrying uv_write chain

Commit
100 days ago
base: Honor @nospecialize on the owner-carrying uv_write chain The previous trim fix routed the owner-carrying write path through a positional core, but the call into `uv_write_noncancel` still compiled as a generic (trim-unresolvable) call: a default value on a `@nospecialize` parameter drops the `@nospecialize` from the generated full-arity method, so a caller whose `owner` is deliberately untyped cannot devirtualize the call. Write the optional-argument forwarders out by hand so the full-arity methods keep their bare `@nospecialize`, and split the token branch at the call site so every path stays concretely resolvable. Verified locally against the JuliaC TrimmabilityProject: the trim verify is clean and the trimmed executable builds and runs. Fixes the JuliaC test failures on all platforms of https://buildkite.com/julialang/julia-pr/builds/389. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015KLwCBAR64r3cTdfaC5krU
Author
Committer
Parents
Loading