blob: b6f37cb908e4edc6770cf9494cc6add44d73ce1c (
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
26
|
// check-pass
// Make sure that we don't look into associated type bounds when looking for
// supertraits that define an associated type. Fixes #76593.
#![feature(associated_type_bounds)]
trait Load: Sized {
type Blob;
}
trait Primitive: Load<Blob = Self> {}
trait BlobPtr: Primitive {}
trait CleanPtr: Load<Blob: BlobPtr> {
fn to_blob(&self) -> Self::Blob;
}
impl Load for () {
type Blob = Self;
}
impl Primitive for () {}
impl BlobPtr for () {}
fn main() {}
|