1 // A variant of traits-issue-23003 in which an infinite series of
2 // types are required. This test now just compiles fine, since the
3 // relevant rules that triggered the overflow were removed.
8 use std::marker::PhantomData;
14 struct Receipt<A:Async> {
15 marker: PhantomData<A>,
22 impl<B> Async for Complete<B> {
23 type Cancel = Receipt<Complete<Option<B>>>;
26 fn foo(_: Receipt<Complete<()>>) { }