//@ compile-flags:-g
//@ disable-gdb-pretty-printers
//@ ignore-backends: gcc

// === GDB TESTS ===================================================================================

//@ gdb-command:run

//@ gdb-command:print *t0
//@ gdb-check:$1 = 1
//@ gdb-command:print *t1
//@ gdb-check:$2 = 2.5
//@ gdb-command:continue

//@ gdb-command:print *t0
//@ gdb-check:$3 = 3.5
//@ gdb-command:print *t1
//@ gdb-check:$4 = 4
//@ gdb-command:continue

//@ gdb-command:print *t0
//@ gdb-check:$5 = 5
//@ gdb-command:print *t1
//@ gdb-check:$6 = generic_function::Struct {a: 6, b: 7.5}
//@ gdb-command:continue

// === LLDB TESTS ==================================================================================

//@ lldb-command:run

//@ lldb-command:v *t0
//@ lldb-check:[...] 1
//@ lldb-command:v *t1
//@ lldb-check:[...] 2.5
//@ lldb-command:continue

//@ lldb-command:v *t0
//@ lldb-check:[...] 3.5
//@ lldb-command:v *t1
//@ lldb-check:[...] 4
//@ lldb-command:continue

//@ lldb-command:v *t0
//@ lldb-check:[...] 5
//@ lldb-command:v *t1
//@ lldb-check:[...] {a:6, b:7.5}
//@ lldb-command:continue

#[derive(Clone)]
struct Struct {
    a: isize,
    b: f64
}

fn dup_tup<T0: Clone, T1: Clone>(t0: &T0, t1: &T1) -> ((T0, T1), (T1, T0)) {
    let ret = ((t0.clone(), t1.clone()), (t1.clone(), t0.clone()));
    zzz(); // #break
    ret
}

fn main() {

    let _ = dup_tup(&1, &2.5f64);
    let _ = dup_tup(&3.5f64, &4_u16);
    let _ = dup_tup(&5, &Struct { a: 6, b: 7.5 });
}

fn zzz() {()}
