summaryrefslogtreecommitdiffstats
path: root/src/test/ui/const-generics/min_const_generics/self-ty-in-const-1.rs
blob: 9ef619365a08c71765ee5007ede8f656242fb638 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
trait Foo {
    fn t1() -> [u8; std::mem::size_of::<Self>()]; //~ERROR generic parameters
}

struct Bar<T>(T);

impl Bar<u8> {
    fn t2() -> [u8; std::mem::size_of::<Self>()] { todo!() } // ok
}

impl<T> Bar<T> {
    fn t3() -> [u8; std::mem::size_of::<Self>()] {} //~ERROR generic `Self`
}

trait Baz {
    fn hey();
}

impl Baz for u16 {
    fn hey() {
        let _: [u8; std::mem::size_of::<Self>()]; // ok
    }
}

fn main() {}