diff options
Diffstat (limited to 'tests/rustdoc-ui/normalize-cycle.rs')
| -rw-r--r-- | tests/rustdoc-ui/normalize-cycle.rs | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/rustdoc-ui/normalize-cycle.rs b/tests/rustdoc-ui/normalize-cycle.rs new file mode 100644 index 00000000000..1ed9ac6bc34 --- /dev/null +++ b/tests/rustdoc-ui/normalize-cycle.rs @@ -0,0 +1,26 @@ +// check-pass +// compile-flags: -Znormalize-docs +// Regression test for <https://github.com/rust-lang/rust/issues/79459>. +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; |
