pub unsafe extern "C" fn LLVMRustDIBuilderCreateUnionType<'a>(
    Builder: &DIBuilder<'a>,
    Scope: Option<&'a DIScope>,
    Name: *const c_char,
    NameLen: size_t,
    File: &'a DIFile,
    LineNumber: c_uint,
    SizeInBits: u64,
    AlignInBits: u32,
    Flags: DIFlags,
    Elements: Option<&'a DIArray>,
    RunTimeLang: c_uint,
    UniqueId: *const c_char,
    UniqueIdLen: size_t
) -> &'a DIType