alexcrichton opened PR #14193 from alexcrichton:fix-nightly-compile to bytecodealliance:main:
Nightly Rust has a new trait solver enabled which trips up on type inference for some of Wasmtime's
bindgen!-generated code. The minimized failure doesn't look obviously the fault of the new solver, nor the fault of Wasmtime here, so I've opted to just apply the fix here for now. This additionally handles a new recursion limit warning on nightly as well.<!--
Please make sure you include the following information:
If this work has been discussed elsewhere, please include a link to that
conversation. If it was discussed in an issue, just mention "issue #...".Explain why this change is needed. If the details are in an issue already,
this can be brief.Our development process is documented in the Wasmtime book:
https://docs.wasmtime.dev/contributing-development-process.htmlPlease review the Bytecode Alliance's AI tool usage policy at
https://github.com/bytecodealliance/governance/blob/main/AI_TOOL_POLICY.mdPlease ensure all communication follows the code of conduct:
https://github.com/bytecodealliance/wasmtime/blob/main/CODE_OF_CONDUCT.md
-->
alexcrichton requested cfallin for a review on PR #14193.
alexcrichton requested wasmtime-core-reviewers for a review on PR #14193.
alexcrichton requested fitzgen for a review on PR #14193.
alexcrichton requested wasmtime-default-reviewers for a review on PR #14193.
alexcrichton updated PR #14193.
:thumbs_up: cfallin submitted PR review.
cfallin has enabled auto merge for PR #14193.
cfallin added PR #14193 Fix compile on latest Rust nightly to the merge queue.
bjorn3 commented on PR #14193:
Has a rustc issue been opened for this?
:check: cfallin merged PR #14193.
cfallin removed PR #14193 Fix compile on latest Rust nightly from the merge queue.
alexcrichton commented on PR #14193:
I've not yet opened an issue, no. If you'd like to though the minimal example is:
pub trait HasData { type Data<'a>; } pub fn with_getter<D2: HasData>(_get: fn(&()) -> D2::Data<'_>) {} pub fn caller<D: HasData>(getter: fn(&()) -> D::Data<'_>) { with_getter(getter); // ERROR }to me this seems like an intentional fix for something that should have been ambiguous in the first place
Last updated: Aug 30 2026 at 09:07 UTC