summaryrefslogtreecommitdiffstats
path: root/tests/ui/union/issue-99375.rs
blob: 175018a7d71a71ac182efea4d7075c2d429dbd42 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// check-pass

union URes<R: Copy> {
    uninit: (),
    init: R,
}

struct Params<F, R: Copy> {
    function: F,
    result: URes<R>,
}

unsafe extern "C" fn do_call<F, R>(params: *mut Params<F, R>)
where
    R: Copy,
    F: Fn() -> R,
{
    (*params).result.init = ((*params).function)();
}

fn main() {}