#![allow(dead_code, mutable_transmutes, non_camel_case_types, non_snake_case, non_upper_case_globals, unused_assignments, unused_mut)]
extern "C" {
    fn printf(_: *const libc::c_char, _: ...) -> libc::c_int;
}

pub type __uint8_t = libc::c_uchar;
pub type __uint32_t = libc::c_uint;
pub type uint8_t = __uint8_t;
pub type uint32_t = __uint32_t;

pub extern "C" fn foo(mut str: *mut libc::c_char) -> *mut libc::c_int {
    let mut a: *mut libc::c_int = str as *mut libc::c_int;
    return a;
}

pub extern "C" fn bar<'a>() -> *mut libc::c_int {
    let mut a: *mut libc::c_int = 0 as *mut libc::c_int;
    return a;
}
fn main_0() -> libc::c_int {
    let mut str: *mut libc::c_char = b"hello world\0" as *const u8 as *const libc::c_char
        as *mut libc::c_char;
    printf(b"%s\0" as *const u8 as *const libc::c_char, foo(str));
    printf(b"%x\0" as *const u8 as *const libc::c_char, bar());
    return 0 as libc::c_int;
}
pub fn main() {
    ::std::process::exit(main_0() as i32)
}
