1
- #define __LITTLE_ENDIAN 1234
2
- #define __BIG_ENDIAN 4321
3
- #define __USE_TIME_BITS64 1
4
-
5
- #define __BYTE_ORDER __LITTLE_ENDIAN
6
-
7
- #define __LONG_MAX __LONG_MAX__
8
-
1
+ /*
2
+ * The .h version of this file is generated from the .h.in.
3
+ * See update_alltypes.sh.
4
+ */
9
5
#define _Addr __PTRDIFF_TYPE__
10
6
#define _Int64 __INT64_TYPE__
11
7
#define _Reg __PTRDIFF_TYPE__
12
8
13
- #if __GNUC__ >= 3
14
- #if defined(__NEED_va_list ) && !defined(__DEFINED_va_list )
15
- typedef __builtin_va_list va_list ;
16
- #define __DEFINED_va_list
17
- #endif
9
+ #define __BYTE_ORDER 1234
10
+ #define __LONG_MAX __LONG_MAX__
18
11
19
- #if defined(__NEED___isoc_va_list ) && !defined(__DEFINED___isoc_va_list )
20
- typedef __builtin_va_list __isoc_va_list ;
21
- #define __DEFINED___isoc_va_list
12
+ #ifndef __cplusplus
13
+ #if defined(__NEED_wchar_t ) && !defined(__DEFINED_wchar_t )
14
+ typedef __WCHAR_TYPE__ wchar_t ;
15
+ #define __DEFINED_wchar_t
22
16
#endif
23
17
24
- #else
25
- #if defined(__NEED_va_list ) && !defined(__DEFINED_va_list )
26
- typedef struct __va_list * va_list ;
27
- #define __DEFINED_va_list
28
18
#endif
29
-
30
- #if defined(__NEED___isoc_va_list ) && !defined(__DEFINED___isoc_va_list )
31
- typedef struct __va_list * __isoc_va_list ;
32
- #define __DEFINED___isoc_va_list
19
+ #if defined(__NEED_wint_t ) && !defined(__DEFINED_wint_t )
20
+ typedef __WINT_TYPE__ wint_t ;
21
+ #define __DEFINED_wint_t
33
22
#endif
34
23
24
+
25
+ // XXX EMSCRIPTEN: ensure it's always 32-bits even in wasm64
26
+ #if defined(__NEED_blkcnt_t ) && !defined(__DEFINED_blkcnt_t )
27
+ typedef int blkcnt_t ;
28
+ #define __DEFINED_blkcnt_t
35
29
#endif
36
30
37
- #ifndef __cplusplus
38
- #ifdef __WCHAR_TYPE__
39
- #if defined(__NEED_wchar_t ) && !defined(__DEFINED_wchar_t )
40
- typedef __WCHAR_TYPE__ wchar_t ;
41
- #define __DEFINED_wchar_t
31
+ #if defined(__NEED_blksize_t ) && !defined(__DEFINED_blksize_t )
32
+ typedef int blksize_t ;
33
+ #define __DEFINED_blksize_t
42
34
#endif
43
35
44
- #else
45
- #if defined(__NEED_wchar_t ) && !defined(__DEFINED_wchar_t )
46
- typedef int wchar_t ;
47
- #define __DEFINED_wchar_t
36
+ #if defined(__NEED_clock_t ) && !defined(__DEFINED_clock_t )
37
+ typedef int clock_t ;
38
+ #define __DEFINED_clock_t
48
39
#endif
49
40
41
+ #if defined(__NEED_dev_t ) && !defined(__DEFINED_dev_t )
42
+ typedef unsigned int dev_t ;
43
+ #define __DEFINED_dev_t
50
44
#endif
45
+
46
+ #if defined(__NEED_suseconds_t ) && !defined(__DEFINED_suseconds_t )
47
+ typedef int suseconds_t ;
48
+ #define __DEFINED_suseconds_t
51
49
#endif
52
- #if defined(__NEED_wint_t ) && !defined(__DEFINED_wint_t )
53
- typedef __WINT_TYPE__ wint_t ;
54
- #define __DEFINED_wint_t
50
+
51
+ #if defined(__NEED_wctype_t ) && !defined(__DEFINED_wctype_t )
52
+ typedef unsigned int wctype_t ;
53
+ #define __DEFINED_wctype_t
55
54
#endif
56
55
57
56
58
- #if defined(__FLT_EVAL_METHOD__ ) && __FLT_EVAL_METHOD__ == 0
59
57
#if defined(__NEED_float_t ) && !defined(__DEFINED_float_t )
60
58
typedef float float_t ;
61
59
#define __DEFINED_float_t
@@ -66,76 +64,54 @@ typedef double double_t;
66
64
#define __DEFINED_double_t
67
65
#endif
68
66
69
- #else
70
- #if defined(__NEED_float_t ) && !defined(__DEFINED_float_t )
71
- typedef long double float_t ;
72
- #define __DEFINED_float_t
73
- #endif
74
67
75
- #if defined(__NEED_double_t ) && !defined(__DEFINED_double_t )
76
- typedef long double double_t ;
77
- #define __DEFINED_double_t
68
+ #ifndef __cplusplus
69
+ #if defined(__NEED_max_align_t ) && !defined(__DEFINED_max_align_t )
70
+ typedef struct { _Alignas(8 ) long long __ll ; long double __ld ; } max_align_t ;
71
+ #define __DEFINED_max_align_t
78
72
#endif
79
73
74
+ #elif defined(__GNUC__ )
75
+ #if defined(__NEED_max_align_t ) && !defined(__DEFINED_max_align_t )
76
+ typedef struct { __attribute__((__aligned__ (8 ))) long long __ll ; long double __ld ; } max_align_t ;
77
+ #define __DEFINED_max_align_t
80
78
#endif
81
79
82
- #if defined(__NEED_time_t ) && !defined(__DEFINED_time_t )
83
- typedef _Int64 time_t ;
84
- #define __DEFINED_time_t
80
+ #else
81
+ #if defined(__NEED_max_align_t ) && !defined(__DEFINED_max_align_t )
82
+ typedef struct { alignas(8 ) long long __ll ; long double __ld ; } max_align_t ;
83
+ #define __DEFINED_max_align_t
85
84
#endif
86
85
87
- #if defined(__NEED_suseconds_t ) && !defined(__DEFINED_suseconds_t )
88
- typedef int suseconds_t ; /* XXX EMSCRIPTEN: ensure it's always 32-bits even in wasm64 */
89
- #define __DEFINED_suseconds_t
90
86
#endif
91
87
92
-
88
+ // For canvas transfer implementation in Emscripten, use an extra control field
89
+ // to pass a pointer to a string denoting the WebGL canvases to transfer.
93
90
#if defined(__NEED_pthread_attr_t ) && !defined(__DEFINED_pthread_attr_t )
94
- typedef struct {
95
- union {
96
- int __i [10 ];
97
- volatile int __vi [10 ];
98
- unsigned long __s [10 ];
99
- } __u ;
100
- #ifdef __EMSCRIPTEN__
101
- // For canvas transfer implementation in Emscripten, use an extra control field
102
- // to pass a pointer to a string denoting the WebGL canvases to transfer.
103
- const char * _a_transferredcanvases ;
104
- #endif
105
- } pthread_attr_t ;
91
+ typedef struct { union { int __i [10 ]; volatile int __vi [10 ]; unsigned long __s [10 ]; } __u ; const char * _a_transferredcanvases ; } pthread_attr_t ;
106
92
#define __DEFINED_pthread_attr_t
107
93
#endif
108
94
95
+
96
+ // TODO(kleisauke): Remove these two typedefs.
109
97
#if defined(__NEED_pthread_mutex_t ) && !defined(__DEFINED_pthread_mutex_t )
110
- typedef struct { union { int __i [6 ]; volatile int __vi [6 ]; volatile void * __p [6 ]; } __u ; } pthread_mutex_t ;
98
+ typedef struct { union { int __i [6 ]; volatile int __vi [6 ]; volatile void * /*volatile*/ __p [6 ]; } __u ; } pthread_mutex_t ;
111
99
#define __DEFINED_pthread_mutex_t
112
100
#endif
113
101
114
102
#if defined(__NEED_mtx_t ) && !defined(__DEFINED_mtx_t )
115
- typedef struct { union { int __i [6 ]; volatile int __vi [6 ]; volatile void * __p [6 ]; } __u ; } mtx_t ;
103
+ typedef struct { union { int __i [6 ]; volatile int __vi [6 ]; volatile void * /*volatile*/ __p [6 ]; } __u ; } mtx_t ;
116
104
#define __DEFINED_mtx_t
117
105
#endif
118
106
119
- #if defined(__NEED_pthread_cond_t ) && !defined(__DEFINED_pthread_cond_t )
120
- typedef struct { union { int __i [12 ]; volatile int __vi [12 ]; void * __p [12 ]; } __u ; } pthread_cond_t ;
121
- #define __DEFINED_pthread_cond_t
122
- #endif
123
-
124
- #if defined(__NEED_cnd_t ) && !defined(__DEFINED_cnd_t )
125
- typedef struct { union { int __i [12 ]; volatile int __vi [12 ]; void * __p [12 ]; } __u ; } cnd_t ;
126
- #define __DEFINED_cnd_t
127
- #endif
128
-
129
- #if defined(__NEED_pthread_rwlock_t ) && !defined(__DEFINED_pthread_rwlock_t )
130
- typedef struct { union { int __i [sizeof (long )== 8 ?14 :8 ]; volatile int __vi [sizeof (long )== 8 ?14 :8 ]; void * __p [sizeof (long )== 8 ?7 :8 ]; } __u ; } pthread_rwlock_t ;
131
- #define __DEFINED_pthread_rwlock_t
132
- #endif
133
-
134
- #if defined(__NEED_pthread_barrier_t ) && !defined(__DEFINED_pthread_barrier_t )
135
- typedef struct { union { int __i [5 ]; volatile int __vi [5 ]; void * __p [5 ]; } __u ; } pthread_barrier_t ;
136
- #define __DEFINED_pthread_barrier_t
137
- #endif
138
107
108
+ // END EMSCRIPTEN-SPECIFIC DEFINITIONS
109
+ //
110
+ // Below here are the shared musl definitions. The emscripten-specific definitions above will take precedence
111
+ // due to the `__DEFINED_` macro system.
112
+ #define __LITTLE_ENDIAN 1234
113
+ #define __BIG_ENDIAN 4321
114
+ #define __USE_TIME_BITS64 1
139
115
140
116
#if defined(__NEED_size_t ) && !defined(__DEFINED_size_t )
141
117
typedef unsigned _Addr size_t ;
@@ -172,29 +148,39 @@ typedef _Reg register_t;
172
148
#define __DEFINED_register_t
173
149
#endif
174
150
151
+ #if defined(__NEED_time_t ) && !defined(__DEFINED_time_t )
152
+ typedef _Int64 time_t ;
153
+ #define __DEFINED_time_t
154
+ #endif
155
+
156
+ #if defined(__NEED_suseconds_t ) && !defined(__DEFINED_suseconds_t )
157
+ typedef _Int64 suseconds_t ;
158
+ #define __DEFINED_suseconds_t
159
+ #endif
160
+
175
161
176
162
#if defined(__NEED_int8_t ) && !defined(__DEFINED_int8_t )
177
163
typedef signed char int8_t ;
178
164
#define __DEFINED_int8_t
179
165
#endif
180
166
181
167
#if defined(__NEED_int16_t ) && !defined(__DEFINED_int16_t )
182
- typedef short int16_t ;
168
+ typedef signed short int16_t ;
183
169
#define __DEFINED_int16_t
184
170
#endif
185
171
186
172
#if defined(__NEED_int32_t ) && !defined(__DEFINED_int32_t )
187
- typedef int int32_t ;
173
+ typedef signed int int32_t ;
188
174
#define __DEFINED_int32_t
189
175
#endif
190
176
191
177
#if defined(__NEED_int64_t ) && !defined(__DEFINED_int64_t )
192
- typedef _Int64 int64_t ;
178
+ typedef signed _Int64 int64_t ;
193
179
#define __DEFINED_int64_t
194
180
#endif
195
181
196
182
#if defined(__NEED_intmax_t ) && !defined(__DEFINED_intmax_t )
197
- typedef _Int64 intmax_t ;
183
+ typedef signed _Int64 intmax_t ;
198
184
#define __DEFINED_intmax_t
199
185
#endif
200
186
@@ -250,17 +236,17 @@ typedef unsigned _Int64 ino_t;
250
236
#endif
251
237
252
238
#if defined(__NEED_dev_t ) && !defined(__DEFINED_dev_t )
253
- typedef unsigned int dev_t ;
239
+ typedef unsigned _Int64 dev_t ;
254
240
#define __DEFINED_dev_t
255
241
#endif
256
242
257
243
#if defined(__NEED_blksize_t ) && !defined(__DEFINED_blksize_t )
258
- typedef int blksize_t ; /* XXX EMSCRIPTEN: ensure it's always 32-bits even in wasm64 */
244
+ typedef long blksize_t ;
259
245
#define __DEFINED_blksize_t
260
246
#endif
261
247
262
248
#if defined(__NEED_blkcnt_t ) && !defined(__DEFINED_blkcnt_t )
263
- typedef int blkcnt_t ;
249
+ typedef _Int64 blkcnt_t ;
264
250
#define __DEFINED_blkcnt_t
265
251
#endif
266
252
@@ -274,13 +260,14 @@ typedef unsigned _Int64 fsfilcnt_t;
274
260
#define __DEFINED_fsfilcnt_t
275
261
#endif
276
262
263
+
277
264
#if defined(__NEED_wint_t ) && !defined(__DEFINED_wint_t )
278
265
typedef unsigned wint_t ;
279
266
#define __DEFINED_wint_t
280
267
#endif
281
268
282
269
#if defined(__NEED_wctype_t ) && !defined(__DEFINED_wctype_t )
283
- typedef unsigned int wctype_t ; /* XXX EMSCRIPTEN: ensure it's always 32-bits even in wasm64 */
270
+ typedef unsigned long wctype_t ;
284
271
#define __DEFINED_wctype_t
285
272
#endif
286
273
@@ -296,22 +283,17 @@ typedef int clockid_t;
296
283
#endif
297
284
298
285
#if defined(__NEED_clock_t ) && !defined(__DEFINED_clock_t )
299
- typedef int clock_t ; /* XXX EMSCRIPTEN: ensure it's always 32-bits even in wasm64 */
286
+ typedef long clock_t ;
300
287
#define __DEFINED_clock_t
301
288
#endif
302
289
303
- #if defined(__NEED_max_align_t ) && !defined(__DEFINED_max_align_t )
304
- typedef struct { long long __ll ; long double __ld ; } max_align_t ;
305
- #define __DEFINED_max_align_t
306
- #endif
307
-
308
290
#if defined(__NEED_struct_timeval ) && !defined(__DEFINED_struct_timeval )
309
291
struct timeval { time_t tv_sec ; suseconds_t tv_usec ; };
310
292
#define __DEFINED_struct_timeval
311
293
#endif
312
294
313
295
#if defined(__NEED_struct_timespec ) && !defined(__DEFINED_struct_timespec )
314
- struct timespec { time_t tv_sec ; long tv_nsec ; };
296
+ struct timespec { time_t tv_sec ; int : 8 * ( sizeof ( time_t ) - sizeof ( long )) * ( __BYTE_ORDER == 4321 ); long tv_nsec ; int : 8 * ( sizeof ( time_t ) - sizeof ( long )) * ( __BYTE_ORDER != 4321 ) ; };
315
297
#define __DEFINED_struct_timespec
316
298
#endif
317
299
@@ -396,12 +378,28 @@ typedef struct { unsigned __attr[2]; } pthread_rwlockattr_t;
396
378
#endif
397
379
398
380
381
+ #if defined(__NEED_struct__IO_FILE ) && !defined(__DEFINED_struct__IO_FILE )
382
+ struct _IO_FILE { char __x ; };
383
+ #define __DEFINED_struct__IO_FILE
384
+ #endif
385
+
399
386
#if defined(__NEED_FILE ) && !defined(__DEFINED_FILE )
400
387
typedef struct _IO_FILE FILE ;
401
388
#define __DEFINED_FILE
402
389
#endif
403
390
404
391
392
+ #if defined(__NEED_va_list ) && !defined(__DEFINED_va_list )
393
+ typedef __builtin_va_list va_list ;
394
+ #define __DEFINED_va_list
395
+ #endif
396
+
397
+ #if defined(__NEED___isoc_va_list ) && !defined(__DEFINED___isoc_va_list )
398
+ typedef __builtin_va_list __isoc_va_list ;
399
+ #define __DEFINED___isoc_va_list
400
+ #endif
401
+
402
+
405
403
#if defined(__NEED_mbstate_t ) && !defined(__DEFINED_mbstate_t )
406
404
typedef struct __mbstate_t { unsigned __opaque1 , __opaque2 ; } mbstate_t ;
407
405
#define __DEFINED_mbstate_t
@@ -443,6 +441,42 @@ typedef unsigned short sa_family_t;
443
441
#endif
444
442
445
443
444
+ #if defined(__NEED_pthread_attr_t ) && !defined(__DEFINED_pthread_attr_t )
445
+ typedef struct { union { int __i [sizeof (long )== 8 ?14 :9 ]; volatile int __vi [sizeof (long )== 8 ?14 :9 ]; unsigned long __s [sizeof (long )== 8 ?7 :9 ]; } __u ; } pthread_attr_t ;
446
+ #define __DEFINED_pthread_attr_t
447
+ #endif
448
+
449
+ #if defined(__NEED_pthread_mutex_t ) && !defined(__DEFINED_pthread_mutex_t )
450
+ typedef struct { union { int __i [sizeof (long )== 8 ?10 :6 ]; volatile int __vi [sizeof (long )== 8 ?10 :6 ]; volatile void * volatile __p [sizeof (long )== 8 ?5 :6 ]; } __u ; } pthread_mutex_t ;
451
+ #define __DEFINED_pthread_mutex_t
452
+ #endif
453
+
454
+ #if defined(__NEED_mtx_t ) && !defined(__DEFINED_mtx_t )
455
+ typedef struct { union { int __i [sizeof (long )== 8 ?10 :6 ]; volatile int __vi [sizeof (long )== 8 ?10 :6 ]; volatile void * volatile __p [sizeof (long )== 8 ?5 :6 ]; } __u ; } mtx_t ;
456
+ #define __DEFINED_mtx_t
457
+ #endif
458
+
459
+ #if defined(__NEED_pthread_cond_t ) && !defined(__DEFINED_pthread_cond_t )
460
+ typedef struct { union { int __i [12 ]; volatile int __vi [12 ]; void * __p [12 * sizeof (int )/sizeof (void * )]; } __u ; } pthread_cond_t ;
461
+ #define __DEFINED_pthread_cond_t
462
+ #endif
463
+
464
+ #if defined(__NEED_cnd_t ) && !defined(__DEFINED_cnd_t )
465
+ typedef struct { union { int __i [12 ]; volatile int __vi [12 ]; void * __p [12 * sizeof (int )/sizeof (void * )]; } __u ; } cnd_t ;
466
+ #define __DEFINED_cnd_t
467
+ #endif
468
+
469
+ #if defined(__NEED_pthread_rwlock_t ) && !defined(__DEFINED_pthread_rwlock_t )
470
+ typedef struct { union { int __i [sizeof (long )== 8 ?14 :8 ]; volatile int __vi [sizeof (long )== 8 ?14 :8 ]; void * __p [sizeof (long )== 8 ?7 :8 ]; } __u ; } pthread_rwlock_t ;
471
+ #define __DEFINED_pthread_rwlock_t
472
+ #endif
473
+
474
+ #if defined(__NEED_pthread_barrier_t ) && !defined(__DEFINED_pthread_barrier_t )
475
+ typedef struct { union { int __i [sizeof (long )== 8 ?8 :5 ]; volatile int __vi [sizeof (long )== 8 ?8 :5 ]; void * __p [sizeof (long )== 8 ?4 :5 ]; } __u ; } pthread_barrier_t ;
476
+ #define __DEFINED_pthread_barrier_t
477
+ #endif
478
+
479
+
446
480
#undef _Addr
447
481
#undef _Int64
448
482
#undef _Reg
0 commit comments