summaryrefslogtreecommitdiffstats
path: root/tests/ui/type-alias-impl-trait/auto-trait-leakage3.rs
blob: 5fb7a9473d3dfbc57cef2537e10e59729a553908 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#![feature(type_alias_impl_trait)]
#![allow(dead_code)]

// FIXME This should compile, but it currently doesn't

mod m {
    type Foo = impl std::fmt::Debug;
    //~^ ERROR: cycle detected when computing type of `m::Foo::{opaque#0}` [E0391]

    pub fn foo() -> Foo {
        22_u32
    }

    pub fn bar() {
        is_send(foo());
    }

    fn is_send<T: Send>(_: T) {}
}

fn main() {}