Closed
Description
Code
I tried this code:
pub trait Query {}
pub trait AsQuery {
type Query;
}
impl<T: Query> AsQuery for T {
type Query = T;
}
pub trait SelectDsl<Selection> {
type Output;
}
impl<T, Selection> SelectDsl<Selection> for T
where
T: AsQuery,
T::Query: SelectDsl<Selection>,
{
type Output = <T::Query as SelectDsl<Selection>>::Output;
}
pub type Select<Source, Selection> = <Source as SelectDsl<Selection>>::Output;
I expected to see this happen: cargo doc --no-deps
succeeds
Instead, this happened: Running cargo doc --no-deps
failed with the following error message:
error[E0275]: overflow evaluating the requirement `<Source as SelectDsl<Selection>>::Output == _`
error: aborting due to previous error
For more information about this error, try `rustc --explain E0275`.
error: could not document `rustdoc_regression`
(Note that compiling/checking that code via cargo run
/cargo check
will just work fine)
Version it worked on
It most recently worked on: rustdoc 1.50.0-nightly (b48cafd9e 2020-11-25)
Version with regression
rustdoc --version
:
rustdoc 1.50.0-nightly (72da5a9d8 2020-11-26)
binary: rustdoc
commit-hash: 72da5a9d85a522b11e80d0fdd1fd95247d442604
commit-date: 2020-11-26
host: x86_64-unknown-linux-gnu
If you know when this regression occurred, please add a line like below, replacing {channel}
with one of stable, beta, or nightly.
@rustbot modify labels: +regression-from-stable-to-nightly -regression-untriaged