about summary refs log tree commit diff
path: root/src/tools/clippy/tests/ui/crashes/ice-6793.rs
blob: d83a2ee251dbde6dd51605c111c7e2b7bd83eef1 (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
//@ check-pass
//! This is a reproducer for the ICE 6793: https://github.com/rust-lang/rust-clippy/issues/6793.
//! The ICE is caused by using `TyCtxt::type_of(assoc_type_id)`, which is the same as the ICE 6792.

trait Trait {
    type Ty: 'static + Clone;

    fn broken() -> Self::Ty;
}

#[derive(Clone)]
struct MyType {
    x: i32,
}

impl Trait for MyType {
    type Ty = MyType;

    fn broken() -> Self::Ty {
        Self::Ty { x: 1 }
    }
}

fn main() {}