#![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;
}
#[derive(Copy, Clone)]
#[repr(C)]
pub enum options {
    option_a(libc::c_int),
    option_b(libc::c_float),
}
unsafe fn main_0() -> libc::c_int {
    let mut o: options = options::option_a(0);
    if let options::option_a(ref mut op_a) = o {
        *op_a = (1 as libc::c_int) << 30 as libc::c_int | 1 as libc::c_int;
    }
    if let options::option_a(op_a) = o {
        printf(b"option_a %i\n\0" as *const u8 as *const libc::c_char, op_a);
    }
    if let options::option_b(op_b) = o {
        printf(b"option_b %f\n\0" as *const u8 as *const libc::c_char, op_b as libc::c_double);
    }
    return 0;
}
pub fn main() {
    unsafe { ::std::process::exit(main_0() as i32) }
}
