summary refs log tree commit diff
path: root/src/test/ui/recursion/issue-38591-non-regular-dropck-recursion.rs
blob: d9996b80ac09d172f96a6c40e91793f7683a1d4a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// Dropck shouldn't hit a recursion limit from checking `S<u32>` since it has
// no free regions or type parameters.
// Codegen however, has to error for the infinitely many `drop_in_place`
// functions it has been asked to create.
// build-fail

struct S<T> {
    t: T,
    s: Box<S<fn(u: T)>>,
}

fn f(x: S<u32>) {}

fn main() {
    // Force instantiation.
    f as fn(_);
}