1 macro_rules! expand_align {
2     () => {
3         s! {
4             pub struct sem_t { // FIXME
5                 #[cfg(target_pointer_width = "32")]
6                 __size: [::c_char; 16],
7                 #[cfg(target_pointer_width = "64")]
8                 __size: [::c_char; 32],
9                 __align: [::c_long; 0],
10             }
11 
12             pub struct pthread_mutex_t { // FIXME
13                 #[cfg(any(target_arch = "mips",
14                           target_arch = "arm",
15                           target_arch = "powerpc"))]
16                 __align: [::c_long; 0],
17                 #[cfg(not(any(target_arch = "mips",
18                               target_arch = "arm",
19                               target_arch = "powerpc")))]
20                 __align: [::c_longlong; 0],
21                 size: [u8; ::__SIZEOF_PTHREAD_MUTEX_T],
22             }
23 
24             pub struct pthread_mutexattr_t { // FIXME
25                 #[cfg(any(target_arch = "x86_64", target_arch = "powerpc64",
26                           target_arch = "mips64", target_arch = "s390x",
27                           target_arch = "sparc64"))]
28                 __align: [::c_int; 0],
29                 #[cfg(not(any(target_arch = "x86_64", target_arch = "powerpc64",
30                               target_arch = "mips64", target_arch = "s390x",
31                               target_arch = "sparc64")))]
32                 __align: [::c_long; 0],
33                 size: [u8; ::__SIZEOF_PTHREAD_MUTEXATTR_T],
34             }
35 
36             pub struct pthread_cond_t { // FIXME
37                 __align: [::c_longlong; 0],
38                 size: [u8; ::__SIZEOF_PTHREAD_COND_T],
39             }
40 
41             pub struct pthread_condattr_t { // FIXME
42                 __align: [::c_int; 0],
43                 size: [u8; ::__SIZEOF_PTHREAD_CONDATTR_T],
44             }
45 
46             pub struct pthread_rwlock_t { // FIXME
47                 #[cfg(any(target_arch = "mips",
48                           target_arch = "arm",
49                           target_arch = "powerpc"))]
50                 __align: [::c_long; 0],
51                 #[cfg(not(any(target_arch = "mips",
52                               target_arch = "arm",
53                               target_arch = "powerpc")))]
54                 __align: [::c_longlong; 0],
55                 size: [u8; ::__SIZEOF_PTHREAD_RWLOCK_T],
56             }
57         }
58     }
59 }
60