@@ -8,8 +8,8 @@ typedef signed short int __int16_t;
88typedef unsigned short int __uint16_t ;
99typedef signed int __int32_t ;
1010typedef unsigned int __uint32_t ;
11- typedef signed long int __int64_t ;
12- typedef unsigned long int __uint64_t ;
11+ __extension__ typedef signed long long int __int64_t ;
12+ __extension__ typedef unsigned long long int __uint64_t ;
1313typedef __int8_t __int_least8_t ;
1414typedef __uint8_t __uint_least8_t ;
1515typedef __int16_t __int_least16_t ;
@@ -18,48 +18,49 @@ typedef __int32_t __int_least32_t;
1818typedef __uint32_t __uint_least32_t ;
1919typedef __int64_t __int_least64_t ;
2020typedef __uint64_t __uint_least64_t ;
21- typedef long int __quad_t ;
22- typedef unsigned long int __u_quad_t ;
23- typedef long int __intmax_t ;
24- typedef unsigned long int __uintmax_t ;
25- typedef unsigned long int __dev_t ;
26- typedef unsigned int __uid_t ;
27- typedef unsigned int __gid_t ;
28- typedef unsigned long int __ino_t ;
29- typedef unsigned long int __ino64_t ;
30- typedef unsigned int __mode_t ;
31- typedef unsigned long int __nlink_t ;
32- typedef long int __off_t ;
33- typedef long int __off64_t ;
34- typedef int __pid_t ;
35- typedef struct { int __val[2 ]; } __fsid_t ;
36- typedef long int __clock_t ;
37- typedef unsigned long int __rlim_t ;
38- typedef unsigned long int __rlim64_t ;
39- typedef unsigned int __id_t ;
40- typedef long int __time_t ;
41- typedef unsigned int __useconds_t ;
42- typedef long int __suseconds_t ;
43- typedef int __daddr_t ;
44- typedef int __key_t ;
45- typedef int __clockid_t ;
46- typedef void * __timer_t ;
47- typedef long int __blksize_t ;
48- typedef long int __blkcnt_t ;
49- typedef long int __blkcnt64_t ;
50- typedef unsigned long int __fsblkcnt_t ;
51- typedef unsigned long int __fsblkcnt64_t ;
52- typedef unsigned long int __fsfilcnt_t ;
53- typedef unsigned long int __fsfilcnt64_t ;
54- typedef long int __fsword_t ;
55- typedef long int __ssize_t ;
56- typedef long int __syscall_slong_t ;
57- typedef unsigned long int __syscall_ulong_t ;
21+ __extension__ typedef long long int __quad_t ;
22+ __extension__ typedef unsigned long long int __u_quad_t ;
23+ __extension__ typedef long long int __intmax_t ;
24+ __extension__ typedef unsigned long long int __uintmax_t ;
25+ __extension__ typedef __uint64_t __dev_t ;
26+ __extension__ typedef unsigned int __uid_t ;
27+ __extension__ typedef unsigned int __gid_t ;
28+ __extension__ typedef unsigned long int __ino_t ;
29+ __extension__ typedef __uint64_t __ino64_t ;
30+ __extension__ typedef unsigned int __mode_t ;
31+ __extension__ typedef unsigned int __nlink_t ;
32+ __extension__ typedef long int __off_t ;
33+ __extension__ typedef __int64_t __off64_t ;
34+ __extension__ typedef int __pid_t ;
35+ __extension__ typedef struct { int __val[2 ]; } __fsid_t ;
36+ __extension__ typedef long int __clock_t ;
37+ __extension__ typedef unsigned long int __rlim_t ;
38+ __extension__ typedef __uint64_t __rlim64_t ;
39+ __extension__ typedef unsigned int __id_t ;
40+ __extension__ typedef long int __time_t ;
41+ __extension__ typedef unsigned int __useconds_t ;
42+ __extension__ typedef long int __suseconds_t ;
43+ __extension__ typedef int __daddr_t ;
44+ __extension__ typedef int __key_t ;
45+ __extension__ typedef int __clockid_t ;
46+ __extension__ typedef void * __timer_t ;
47+ __extension__ typedef long int __blksize_t ;
48+ __extension__ typedef long int __blkcnt_t ;
49+ __extension__ typedef __int64_t __blkcnt64_t ;
50+ __extension__ typedef unsigned long int __fsblkcnt_t ;
51+ __extension__ typedef __uint64_t __fsblkcnt64_t ;
52+ __extension__ typedef unsigned long int __fsfilcnt_t ;
53+ __extension__ typedef __uint64_t __fsfilcnt64_t ;
54+ __extension__ typedef int __fsword_t ;
55+ __extension__ typedef int __ssize_t ;
56+ __extension__ typedef long int __syscall_slong_t ;
57+ __extension__ typedef unsigned long int __syscall_ulong_t ;
5858typedef __off64_t __loff_t ;
5959typedef char *__caddr_t ;
60- typedef long int __intptr_t ;
61- typedef unsigned int __socklen_t ;
60+ __extension__ typedef int __intptr_t ;
61+ __extension__ typedef unsigned int __socklen_t ;
6262typedef int __sig_atomic_t ;
63+ __extension__ typedef __int64_t __time64_t ;
6364static __inline __uint16_t
6465__bswap_16 (__uint16_t __bsx)
6566{
@@ -90,7 +91,7 @@ __uint64_identity (__uint64_t __x)
9091{
9192 return __x;
9293}
93- typedef long unsigned int size_t ;
94+ typedef unsigned int size_t ;
9495typedef __time_t time_t ;
9596struct timespec
9697{
@@ -227,28 +228,29 @@ struct __pthread_rwlock_arch_t
227228 unsigned int __writers_futex;
228229 unsigned int __pad3;
229230 unsigned int __pad4;
230- int __cur_writer ;
231- int __shared;
231+ unsigned char __flags ;
232+ unsigned char __shared;
232233 signed char __rwelision;
233- unsigned char __pad1[7 ];
234- unsigned long int __pad2;
235- unsigned int __flags;
234+ unsigned char __pad2;
235+ int __cur_writer;
236236};
237- typedef struct __pthread_internal_list
237+ typedef struct __pthread_internal_slist
238238{
239- struct __pthread_internal_list *__prev;
240- struct __pthread_internal_list *__next;
241- } __pthread_list_t ;
239+ struct __pthread_internal_slist *__next;
240+ } __pthread_slist_t ;
242241struct __pthread_mutex_s
243242{
244243 int __lock ;
245244 unsigned int __count;
246245 int __owner;
247- unsigned int __nusers;
248246 int __kind;
249247
250- short __spins; short __elision;
251- __pthread_list_t __list;
248+ unsigned int __nusers;
249+ __extension__ union
250+ {
251+ struct { short __espins; short __eelision; } __elision_data;
252+ __pthread_slist_t __list;
253+ };
252254
253255};
254256struct __pthread_cond_s
@@ -292,14 +294,14 @@ typedef unsigned int pthread_key_t;
292294typedef int pthread_once_t ;
293295union pthread_attr_t
294296{
295- char __size[56 ];
297+ char __size[36 ];
296298 long int __align;
297299};
298300typedef union pthread_attr_t pthread_attr_t ;
299301typedef union
300302{
301303 struct __pthread_mutex_s __data;
302- char __size[40 ];
304+ char __size[24 ];
303305 long int __align;
304306} pthread_mutex_t ;
305307typedef union
@@ -311,7 +313,7 @@ typedef union
311313typedef union
312314{
313315 struct __pthread_rwlock_arch_t __data;
314- char __size[56 ];
316+ char __size[32 ];
315317 long int __align;
316318} pthread_rwlock_t ;
317319typedef union
@@ -322,15 +324,15 @@ typedef union
322324typedef volatile int pthread_spinlock_t ;
323325typedef union
324326{
325- char __size[32 ];
327+ char __size[20 ];
326328 long int __align;
327329} pthread_barrier_t ;
328330typedef union
329331{
330332 char __size[4 ];
331333 int __align;
332334} pthread_barrierattr_t ;
333- typedef long int __jmp_buf[8 ];
335+ typedef int __jmp_buf[6 ];
334336enum
335337{
336338 PTHREAD_CREATE_JOINABLE,
@@ -498,11 +500,11 @@ struct __pthread_cleanup_frame
498500 int __cancel_type;
499501};
500502extern void __pthread_register_cancel (__pthread_unwind_buf_t *__buf)
501- ;
503+ __attribute__ ((__regparm__ ( 1 ))) ;
502504extern void __pthread_unregister_cancel (__pthread_unwind_buf_t *__buf)
503- ;
505+ __attribute__ ((__regparm__ ( 1 ))) ;
504506extern void __pthread_unwind_next (__pthread_unwind_buf_t *__buf)
505- __attribute__ ((__noreturn__))
507+ __attribute__ ((__regparm__ ( 1 ))) __attribute__ (( __noreturn__))
506508 __attribute__ ((__weak__))
507509 ;
508510struct __jmp_buf_tag ;
@@ -883,7 +885,7 @@ extern void funlockfile (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)
883885extern int __uflow (FILE *);
884886extern int __overflow (FILE *, int );
885887
886- typedef int wchar_t ;
888+ typedef long int wchar_t ;
887889
888890typedef enum
889891{
0 commit comments