112a9d9c8Sopenharmony_ci#![allow(
212a9d9c8Sopenharmony_ci    dead_code,
312a9d9c8Sopenharmony_ci    non_snake_case,
412a9d9c8Sopenharmony_ci    non_camel_case_types,
512a9d9c8Sopenharmony_ci    non_upper_case_globals
612a9d9c8Sopenharmony_ci)]
712a9d9c8Sopenharmony_ci
812a9d9c8Sopenharmony_ci#[repr(C)]
912a9d9c8Sopenharmony_ci#[derive(Debug, Copy, Clone)]
1012a9d9c8Sopenharmony_cipub struct UsesTemplateParameter<T> {
1112a9d9c8Sopenharmony_ci    pub t: T,
1212a9d9c8Sopenharmony_ci    pub _phantom_0: ::std::marker::PhantomData<::std::cell::UnsafeCell<T>>,
1312a9d9c8Sopenharmony_ci}
1412a9d9c8Sopenharmony_ci#[repr(C)]
1512a9d9c8Sopenharmony_ci#[derive(Debug, Copy, Clone)]
1612a9d9c8Sopenharmony_cipub struct UsesTemplateParameter_AlsoUsesTemplateParameter<T> {
1712a9d9c8Sopenharmony_ci    pub also: T,
1812a9d9c8Sopenharmony_ci    pub _phantom_0: ::std::marker::PhantomData<::std::cell::UnsafeCell<T>>,
1912a9d9c8Sopenharmony_ci}
2012a9d9c8Sopenharmony_ciimpl<T> Default for UsesTemplateParameter_AlsoUsesTemplateParameter<T> {
2112a9d9c8Sopenharmony_ci    fn default() -> Self {
2212a9d9c8Sopenharmony_ci        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
2312a9d9c8Sopenharmony_ci        unsafe {
2412a9d9c8Sopenharmony_ci            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
2512a9d9c8Sopenharmony_ci            s.assume_init()
2612a9d9c8Sopenharmony_ci        }
2712a9d9c8Sopenharmony_ci    }
2812a9d9c8Sopenharmony_ci}
2912a9d9c8Sopenharmony_ciimpl<T> Default for UsesTemplateParameter<T> {
3012a9d9c8Sopenharmony_ci    fn default() -> Self {
3112a9d9c8Sopenharmony_ci        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
3212a9d9c8Sopenharmony_ci        unsafe {
3312a9d9c8Sopenharmony_ci            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
3412a9d9c8Sopenharmony_ci            s.assume_init()
3512a9d9c8Sopenharmony_ci        }
3612a9d9c8Sopenharmony_ci    }
3712a9d9c8Sopenharmony_ci}
38