Repository navigation
[ICE]: cargo doc fails for the crate galvyn #163528
Description
Activity
- addedI-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.C-bugCategory: This is a bug.Category: This is a bug.
on Sep 30, 2026 - addedneeds-triageThis issue may need triage. Remove when done. See docs forge.rust-lang.org/release/issue-triagingThis issue may need triage. Remove when done. See docs forge.rust-lang.org/release/issue-triaging
on Sep 30, 2026 - addedE-needs-bisectionCall for participation: This issue needs bisection: https://github.com/rust-lang/cargo-bisect-rustcCall for participation: This issue needs bisection: https://github.com/rust-lang/cargo-bisect-rustcE-needs-mcveCall for participation: This issue has a repro, but needs a Minimal Complete and Verifiable ExampleCall for participation: This issue has a repro, but needs a Minimal Complete and Verifiable Exampleregression-untriagedUntriaged performance or correctness regression.Untriaged performance or correctness regression.
on Sep 30, 2026 - addedI-prioritizeIssue needs a team member to assess the impact. Will be replaced by P-{low,medium,high,critical}Issue needs a team member to assess the impact. Will be replaced by P-{low,medium,high,critical}
on Sep 30, 2026 just by looking at the error, I think we have already other reports and possibly this could be fixed by #162782
Sounds plausible.
I reduced
galvynto the minimal code:pub mod core { pub use galvyn_core::*; }
galvyn-corecontains several definition similar to the example of #162782.However,
galvyn-coreon its own works.I reduced it some more:
// galvyn/src/lib.rs pub mod core { pub use galvyn_core::*; }
// galvyn-core/src/lib.rs use std::convert::Infallible; use axum::extract::Request; use axum::response::IntoResponse; use tower::Service; pub mod re_exports { pub use axum; } /// Trait alias for [`tower::Service`] constraint to be used by axum pub trait AxumService: Service<Request, Error = Infallible, Response: IntoResponse, Future: Send + 'static> { } impl<T> AxumService for T where T: Service<Request, Error = Infallible, Response: IntoResponse, Future: Send + 'static> { }
I tried inline
galvyn-coreintogalvyn, the error would be gone.
I also tried inlining the tower Service trait, the error would be gone.
And this reducedgalvyn-coreon its own works fine.Final minimal example: (produced by claude)
pub trait Tr { type A; } pub struct S<T>(T); impl Tr for S<()> { type A = (); } pub trait Blanket {} impl<T: Tr<A: 'static>> Blanket for T {}
This is almost exactly the same as in #162782
FYI
(According to claude) The re-exports were necessary in my initial example to cause rustdoc to generate a page for the struct with a blanket implementation for the two traits. This can also be done by declaring everything in a single crate.- addedregression-from-stable-to-nightlyPerformance or correctness regression from stable to nightly.Performance or correctness regression from stable to nightly.and removedE-needs-bisectionCall for participation: This issue needs bisection: https://github.com/rust-lang/cargo-bisect-rustcCall for participation: This issue needs bisection: https://github.com/rust-lang/cargo-bisect-rustcE-needs-mcveCall for participation: This issue has a repro, but needs a Minimal Complete and Verifiable ExampleCall for participation: This issue has a repro, but needs a Minimal Complete and Verifiable ExampleI-prioritizeIssue needs a team member to assess the impact. Will be replaced by P-{low,medium,high,critical}Issue needs a team member to assess the impact. Will be replaced by P-{low,medium,high,critical}regression-untriagedUntriaged performance or correctness regression.Untriaged performance or correctness regression.needs-triageThis issue may need triage. Remove when done. See docs forge.rust-lang.org/release/issue-triagingThis issue may need triage. Remove when done. See docs forge.rust-lang.org/release/issue-triaging
on Oct 1, 2026 - addedI-prioritizeIssue needs a team member to assess the impact. Will be replaced by P-{low,medium,high,critical}Issue needs a team member to assess the impact. Will be replaced by P-{low,medium,high,critical}
on Oct 1, 2026 - removedI-prioritizeIssue needs a team member to assess the impact. Will be replaced by P-{low,medium,high,critical}Issue needs a team member to assess the impact. Will be replaced by P-{low,medium,high,critical}
on Oct 1, 2026 this has been fixed by #162782 afaict. Tried it out locally
Hi,
my crate
galvyndoes not build on docs.rs due to a compiler error.I can reproduce it locally with a simple
cargo +nightly doc.The stable rust version seems fine.
Below are the outputs and versions for my local machine. You can also check https://docs.rs/crate/galvyn/latest/builds.
Code
I don't have a small snippet triggering the error.
If I find the time for it, I will search for one.
Meta
rustc --version --verbose:Error output
Backtrace