Skip to content
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
33 lines (23 sloc) 634 Bytes
// run-pass
// Test stack overflow triggered by evaluating the implications. To be
// WF, the type `Receipt<Complete>` would require that `<Complete as
// Async>::Cancel` be WF. This normalizes to `Receipt<Complete>`
// again, leading to an infinite cycle. Issue #23003.
// pretty-expanded FIXME #23616
use std::marker::PhantomData;
trait Async {
type Cancel;
struct Receipt<A:Async> {
marker: PhantomData<A>,
struct Complete {
core: Option<()>,
impl Async for Complete {
type Cancel = Receipt<Complete>;
fn foo(r: Receipt<Complete>) { }
fn main() { }
You can’t perform that action at this time.