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