@@ -57,6 +57,146 @@ pub type __wasi_userdata_t = u64;
57
57
pub type __wasi_whence_t = u8 ;
58
58
pub type __wasi_preopentype_t = u8 ;
59
59
60
+ #[ cfg_attr( feature = "extra_traits" , derive( Debug ) ) ]
61
+ pub enum FILE { }
62
+ impl :: Copy for FILE { }
63
+ impl :: Clone for FILE {
64
+ fn clone ( & self ) -> FILE {
65
+ * self
66
+ }
67
+ }
68
+
69
+ s ! {
70
+ #[ repr( align( 8 ) ) ]
71
+ pub struct fpos_t {
72
+ data: [ u8 ; 16 ] ,
73
+ }
74
+
75
+ pub struct tm {
76
+ pub tm_sec: c_int,
77
+ pub tm_min: c_int,
78
+ pub tm_hour: c_int,
79
+ pub tm_mday: c_int,
80
+ pub tm_mon: c_int,
81
+ pub tm_year: c_int,
82
+ pub tm_wday: c_int,
83
+ pub tm_yday: c_int,
84
+ pub tm_isdst: c_int,
85
+ pub __tm_gmtoff: c_int,
86
+ pub __tm_zone: * const c_char,
87
+ pub __tm_nsec: c_int,
88
+ }
89
+
90
+ pub struct timespec {
91
+ pub tv_sec: time_t,
92
+ pub tv_nsec: c_long,
93
+ }
94
+
95
+ pub struct itimerspec {
96
+ pub it_interval: timespec,
97
+ pub it_value: timespec,
98
+ }
99
+
100
+ pub struct __wasi_dirent_t {
101
+ pub d_next: __wasi_dircookie_t,
102
+ pub d_ino: __wasi_inode_t,
103
+ pub d_namlen: u32 ,
104
+ pub d_type: __wasi_filetype_t,
105
+ }
106
+
107
+ pub struct __wasi_event_u_fd_readwrite_t {
108
+ pub nbytes: __wasi_filesize_t,
109
+ pub flags: __wasi_eventrwflags_t,
110
+ }
111
+
112
+ pub struct __wasi_fdstat_t {
113
+ pub fs_filetype: __wasi_filetype_t,
114
+ pub fs_flags: __wasi_fdflags_t,
115
+ pub fs_rights_base: __wasi_rights_t,
116
+ pub fs_rights_inheriting: __wasi_rights_t,
117
+ }
118
+
119
+ pub struct __wasi_filestat_t {
120
+ pub st_dev: __wasi_device_t,
121
+ pub st_ino: __wasi_inode_t,
122
+ pub st_filetype: __wasi_filetype_t,
123
+ pub st_nlink: __wasi_linkcount_t,
124
+ pub st_size: __wasi_filesize_t,
125
+ pub st_atim: __wasi_timestamp_t,
126
+ pub st_mtim: __wasi_timestamp_t,
127
+ pub st_ctim: __wasi_timestamp_t,
128
+ }
129
+
130
+ pub struct __wasi_ciovec_t {
131
+ pub buf: * const :: c_void,
132
+ pub buf_len: size_t,
133
+ }
134
+
135
+ pub struct __wasi_iovec_t {
136
+ pub buf: * mut :: c_void,
137
+ pub buf_len: size_t,
138
+ }
139
+
140
+ pub struct __wasi_subscription_u_clock_t {
141
+ pub identifier: __wasi_userdata_t,
142
+ pub clock_id: __wasi_clockid_t,
143
+ pub timeout: __wasi_timestamp_t,
144
+ pub precision: __wasi_timestamp_t,
145
+ pub flags: __wasi_subclockflags_t,
146
+ }
147
+
148
+ pub struct __wasi_subscription_u_fd_readwrite_t {
149
+ pub fd: __wasi_fd_t,
150
+ }
151
+
152
+ pub struct __wasi_prestat_u_dir_t {
153
+ pub pr_name_len: size_t,
154
+ }
155
+ }
156
+
157
+ s_no_extra_traits ! {
158
+ #[ allow( missing_debug_implementations) ]
159
+ pub struct __wasi_subscription_t {
160
+ pub userdata: __wasi_userdata_t,
161
+ pub type_: __wasi_eventtype_t,
162
+ pub u: __wasi_subscription_u,
163
+ }
164
+
165
+ #[ allow( missing_debug_implementations) ]
166
+ pub struct __wasi_event_t {
167
+ pub userdata: __wasi_userdata_t,
168
+ pub error: __wasi_errno_t,
169
+ pub type_: __wasi_eventtype_t,
170
+ pub u: __wasi_event_u,
171
+ }
172
+
173
+ #[ allow( missing_debug_implementations) ]
174
+ pub union __wasi_event_u {
175
+ pub fd_readwrite: __wasi_event_u_fd_readwrite_t,
176
+ _bindgen_union_align: [ u64 ; 2 ] ,
177
+ }
178
+
179
+ #[ allow( missing_debug_implementations) ]
180
+ pub union __wasi_subscription_u {
181
+ pub clock: __wasi_subscription_u_clock_t,
182
+ pub fd_readwrite:
183
+ __wasi_subscription_u_fd_readwrite_t,
184
+ _bindgen_union_align: [ u64 ; 5 ] ,
185
+ }
186
+
187
+ #[ allow( missing_debug_implementations) ]
188
+ pub struct __wasi_prestat_t {
189
+ pub pr_type: __wasi_preopentype_t,
190
+ pub u: __wasi_prestat_u,
191
+ }
192
+
193
+ #[ allow( missing_debug_implementations) ]
194
+ pub union __wasi_prestat_u {
195
+ pub dir: __wasi_prestat_u_dir_t,
196
+ }
197
+
198
+ }
199
+
60
200
pub const STDIN_FILENO : c_int = 0 ;
61
201
pub const STDOUT_FILENO : c_int = 1 ;
62
202
pub const STDERR_FILENO : c_int = 2 ;
@@ -248,152 +388,12 @@ pub const __WASI_WHENCE_CUR: u8 = 0;
248
388
pub const __WASI_WHENCE_END: u8 = 1 ;
249
389
pub const __WASI_WHENCE_SET: u8 = 2 ;
250
390
251
- #[ cfg_attr( feature = "extra_traits" , derive( Debug ) ) ]
252
- pub enum FILE { }
253
- impl :: Copy for FILE { }
254
- impl :: Clone for FILE {
255
- fn clone ( & self ) -> FILE {
256
- * self
257
- }
258
- }
259
-
260
- s ! {
261
- #[ repr( align( 8 ) ) ]
262
- pub struct fpos_t {
263
- data: [ u8 ; 16 ] ,
264
- }
265
-
266
- pub struct tm {
267
- pub tm_sec: c_int,
268
- pub tm_min: c_int,
269
- pub tm_hour: c_int,
270
- pub tm_mday: c_int,
271
- pub tm_mon: c_int,
272
- pub tm_year: c_int,
273
- pub tm_wday: c_int,
274
- pub tm_yday: c_int,
275
- pub tm_isdst: c_int,
276
- pub __tm_gmtoff: c_int,
277
- pub __tm_zone: * const c_char,
278
- pub __tm_nsec: c_int,
279
- }
280
-
281
- pub struct timespec {
282
- pub tv_sec: time_t,
283
- pub tv_nsec: c_long,
284
- }
285
-
286
- pub struct itimerspec {
287
- pub it_interval: timespec,
288
- pub it_value: timespec,
289
- }
290
-
291
- pub struct __wasi_dirent_t {
292
- pub d_next: __wasi_dircookie_t,
293
- pub d_ino: __wasi_inode_t,
294
- pub d_namlen: u32 ,
295
- pub d_type: __wasi_filetype_t,
296
- }
297
-
298
- pub struct __wasi_event_u_fd_readwrite_t {
299
- pub nbytes: __wasi_filesize_t,
300
- pub flags: __wasi_eventrwflags_t,
301
- }
302
-
303
- pub struct __wasi_fdstat_t {
304
- pub fs_filetype: __wasi_filetype_t,
305
- pub fs_flags: __wasi_fdflags_t,
306
- pub fs_rights_base: __wasi_rights_t,
307
- pub fs_rights_inheriting: __wasi_rights_t,
308
- }
309
-
310
- pub struct __wasi_filestat_t {
311
- pub st_dev: __wasi_device_t,
312
- pub st_ino: __wasi_inode_t,
313
- pub st_filetype: __wasi_filetype_t,
314
- pub st_nlink: __wasi_linkcount_t,
315
- pub st_size: __wasi_filesize_t,
316
- pub st_atim: __wasi_timestamp_t,
317
- pub st_mtim: __wasi_timestamp_t,
318
- pub st_ctim: __wasi_timestamp_t,
319
- }
320
-
321
- pub struct __wasi_ciovec_t {
322
- pub buf: * const :: c_void,
323
- pub buf_len: size_t,
324
- }
325
-
326
- pub struct __wasi_iovec_t {
327
- pub buf: * mut :: c_void,
328
- pub buf_len: size_t,
329
- }
330
-
331
- pub struct __wasi_subscription_u_clock_t {
332
- pub identifier: __wasi_userdata_t,
333
- pub clock_id: __wasi_clockid_t,
334
- pub timeout: __wasi_timestamp_t,
335
- pub precision: __wasi_timestamp_t,
336
- pub flags: __wasi_subclockflags_t,
337
- }
338
-
339
- pub struct __wasi_subscription_u_fd_readwrite_t {
340
- pub fd: __wasi_fd_t,
341
- }
342
-
343
- pub struct __wasi_prestat_u_dir_t {
344
- pub pr_name_len: size_t,
345
- }
346
- }
347
-
348
- s_no_extra_traits ! {
349
- #[ allow( missing_debug_implementations) ]
350
- pub struct __wasi_subscription_t {
351
- pub userdata: __wasi_userdata_t,
352
- pub type_: __wasi_eventtype_t,
353
- pub u: __wasi_subscription_u,
354
- }
355
-
356
- #[ allow( missing_debug_implementations) ]
357
- pub struct __wasi_event_t {
358
- pub userdata: __wasi_userdata_t,
359
- pub error: __wasi_errno_t,
360
- pub type_: __wasi_eventtype_t,
361
- pub u: __wasi_event_u,
362
- }
363
-
364
- #[ allow( missing_debug_implementations) ]
365
- pub union __wasi_event_u {
366
- pub fd_readwrite: __wasi_event_u_fd_readwrite_t,
367
- _bindgen_union_align: [ u64 ; 2 ] ,
368
- }
369
-
370
- #[ allow( missing_debug_implementations) ]
371
- pub union __wasi_subscription_u {
372
- pub clock: __wasi_subscription_u_clock_t,
373
- pub fd_readwrite:
374
- __wasi_subscription_u_fd_readwrite_t,
375
- _bindgen_union_align: [ u64 ; 5 ] ,
376
- }
377
-
378
- #[ allow( missing_debug_implementations) ]
379
- pub struct __wasi_prestat_t {
380
- pub pr_type: __wasi_preopentype_t,
381
- pub u: __wasi_prestat_u,
382
- }
383
-
384
- #[ allow( missing_debug_implementations) ]
385
- pub union __wasi_prestat_u {
386
- pub dir: __wasi_prestat_u_dir_t,
387
- }
388
-
389
- }
390
-
391
391
#[ cfg_attr( feature = "rustc-dep-of-std" ,
392
392
link( name = "c" , kind = "static" ,
393
393
cfg( target_feature = "crt-static" ) ) ) ]
394
394
#[ cfg_attr( feature = "rustc-dep-of-std" ,
395
395
link( name = "c" , cfg( not( target_feature = "crt-static" ) ) ) ) ]
396
- extern "C" {
396
+ extern {
397
397
pub fn _Exit ( code : c_int ) -> !;
398
398
pub fn _exit ( code : c_int ) -> !;
399
399
pub fn abort ( ) -> !;
@@ -452,8 +452,8 @@ extern "C" {
452
452
pub fn puts ( a : * const c_char ) -> c_int ;
453
453
pub fn perror ( a : * const c_char ) ;
454
454
pub fn srand ( a : c_uint ) ;
455
- pub fn atexit ( a : extern "C" fn ( ) ) -> c_int ;
456
- pub fn at_quick_exit ( a : extern "C" fn ( ) ) -> c_int ;
455
+ pub fn atexit ( a : extern fn ( ) ) -> c_int ;
456
+ pub fn at_quick_exit ( a : extern fn ( ) ) -> c_int ;
457
457
pub fn quick_exit ( a : c_int ) -> !;
458
458
pub fn posix_memalign ( a : * mut * mut c_void , b : size_t , c : size_t ) -> c_int ;
459
459
pub fn rand_r ( a : * mut c_uint ) -> c_int ;
@@ -501,7 +501,7 @@ extern "C" {
501
501
}
502
502
503
503
#[ link( wasm_import_module = "wasi_unstable" ) ]
504
- extern "C" {
504
+ extern {
505
505
#[ link_name = "clock_res_get" ]
506
506
pub fn __wasi_clock_res_get (
507
507
clock_id : __wasi_clockid_t ,
0 commit comments