c2rust-refactor 0.15.0

C2Rust refactoring tool implementation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
fn main() {
    let x = add(1, 2);
    let x = add(add(1, 2), 3);

    let x = sub::<u8>(1_u8, 2_u8);
    let x = sub::<u32>(1_u32, 2_u32);
    let x = sub::<f64>(1_f64, 2_f64);
}
unsafe fn add(x: i32, y: i32) -> i32 {
    x + y
}
unsafe fn sub<T: Sub<T, Result = T>>(x: T, y: T) -> T {
    x - y
}