#![crate_type = "lib"]

struct Struct(u32);

#[inline(never)]
pub fn foo<T>(x: T) -> (T, u32, i8) {
    let (x, Struct(y)) = bar(x);
    (x, y, 2)
}

#[inline(never)]
fn bar<T>(x: T) -> (T, Struct) {
    let _ = not_exported_and_not_generic(0);
    (x, Struct(1))
}

// These should not contribute to the codegen items of other crates.
#[inline(never)]
pub fn exported_but_not_generic(x: i32) -> i64 {
    x as i64
}

#[inline(never)]
fn not_exported_and_not_generic(x: u32) -> u64 {
    x as u64
}

