Skip to content

Commit 4896636

Browse files
authored
ffi: fix some ffi types
Fixes: #508
1 parent cdb218e commit 4896636

File tree

6 files changed

+270
-150
lines changed

6 files changed

+270
-150
lines changed

docs/types/ffi.d.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -73,10 +73,12 @@ declare module 'tjs:ffi'{
7373
sint: SimpleType<number>,
7474
ulong: SimpleType<number>,
7575
slong: SimpleType<number>,
76-
76+
sllong: SimpleType<number>,
77+
ullong: SimpleType<number>,
78+
7779
size: SimpleType<number>,
7880
ssize: SimpleType<number>,
79-
81+
8082
string: SimpleType<string>
8183

8284
buffer: SimpleType<Uint8Array>

src/bundles/c/stdlib/ffi.c

+156-145
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,19 @@
22

33
#include <inttypes.h>
44

5-
const uint32_t tjs__ffi_size = 14095;
5+
const uint32_t tjs__ffi_size = 14181;
66

7-
const uint8_t tjs__ffi[14095] = {
8-
0x0c, 0x8c, 0x02, 0x0e, 0x74, 0x6a, 0x73, 0x3a,
7+
const uint8_t tjs__ffi[14181] = {
8+
0x0c, 0x90, 0x02, 0x0e, 0x74, 0x6a, 0x73, 0x3a,
99
0x66, 0x66, 0x69, 0x02, 0x73, 0x02, 0x71, 0x02,
1010
0x47, 0x02, 0x4f, 0x02, 0x4c, 0x02, 0x48, 0x02,
1111
0x6e, 0x02, 0x46, 0x02, 0x24, 0x02, 0x52, 0x02,
12-
0x76, 0x02, 0x43, 0x02, 0x6c, 0x02, 0x4b, 0x02,
12+
0x76, 0x02, 0x43, 0x02, 0x75, 0x02, 0x4b, 0x02,
1313
0x51, 0x02, 0x53, 0x02, 0x50, 0x02, 0x4d, 0x02,
1414
0x41, 0x02, 0x6a, 0x02, 0x4a, 0x02, 0x57, 0x02,
1515
0x4e, 0x02, 0x58, 0x02, 0x59, 0x04, 0x72, 0x74,
16-
0x02, 0x74, 0x02, 0x65, 0x02, 0x75, 0x02, 0x70,
17-
0x02, 0x68, 0x02, 0x63, 0x02, 0x79, 0x02, 0x61,
16+
0x02, 0x74, 0x02, 0x65, 0x02, 0x63, 0x02, 0x70,
17+
0x02, 0x68, 0x02, 0x6c, 0x02, 0x79, 0x02, 0x61,
1818
0x02, 0x5f, 0x02, 0x42, 0x02, 0x69, 0x02, 0x62,
1919
0x02, 0x77, 0x02, 0x54, 0x02, 0x6b, 0x02, 0x49,
2020
0x02, 0x56, 0x02, 0x72, 0x02, 0x66, 0x02, 0x6f,
@@ -226,28 +226,19 @@ const uint8_t tjs__ffi[14095] = {
226226
0x6f, 0x6e, 0x67, 0x0a, 0x75, 0x6c, 0x6f, 0x6e,
227227
0x67, 0x14, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x73,
228228
0x6c, 0x6f, 0x6e, 0x67, 0x0a, 0x73, 0x6c, 0x6f,
229+
0x6e, 0x67, 0x10, 0x74, 0x79, 0x70, 0x65, 0x5f,
230+
0x75, 0x6c, 0x6c, 0x0c, 0x75, 0x6c, 0x6c, 0x6f,
231+
0x6e, 0x67, 0x10, 0x74, 0x79, 0x70, 0x65, 0x5f,
232+
0x73, 0x6c, 0x6c, 0x0c, 0x73, 0x6c, 0x6c, 0x6f,
229233
0x6e, 0x67, 0x12, 0x74, 0x79, 0x70, 0x65, 0x5f,
230234
0x73, 0x69, 0x7a, 0x65, 0x14, 0x74, 0x79, 0x70,
231235
0x65, 0x5f, 0x73, 0x73, 0x69, 0x7a, 0x65, 0x0a,
232236
0x73, 0x73, 0x69, 0x7a, 0x65, 0x0c, 0x62, 0x75,
233237
0x66, 0x66, 0x65, 0x72, 0x0e, 0x75, 0x69, 0x6e,
234238
0x74, 0x38, 0x5f, 0x74, 0x10, 0x75, 0x69, 0x6e,
235239
0x74, 0x31, 0x36, 0x5f, 0x74, 0x10, 0x75, 0x69,
236-
0x6e, 0x74, 0x33, 0x32, 0x5f, 0x74, 0x20, 0x73,
237-
0x69, 0x67, 0x6e, 0x65, 0x64, 0x20, 0x6c, 0x6f,
238-
0x6e, 0x67, 0x20, 0x6c, 0x6f, 0x6e, 0x67, 0x28,
239-
0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x20, 0x6c,
240-
0x6f, 0x6e, 0x67, 0x20, 0x6c, 0x6f, 0x6e, 0x67,
241-
0x20, 0x69, 0x6e, 0x74, 0x12, 0x6c, 0x6f, 0x6e,
242-
0x67, 0x20, 0x6c, 0x6f, 0x6e, 0x67, 0x1a, 0x6c,
243-
0x6f, 0x6e, 0x67, 0x20, 0x6c, 0x6f, 0x6e, 0x67,
244-
0x20, 0x69, 0x6e, 0x74, 0x10, 0x75, 0x69, 0x6e,
245-
0x74, 0x36, 0x34, 0x5f, 0x74, 0x24, 0x75, 0x6e,
246-
0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x20, 0x6c,
247-
0x6f, 0x6e, 0x67, 0x20, 0x6c, 0x6f, 0x6e, 0x67,
248-
0x2c, 0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65,
249-
0x64, 0x20, 0x6c, 0x6f, 0x6e, 0x67, 0x20, 0x6c,
250-
0x6f, 0x6e, 0x67, 0x20, 0x69, 0x6e, 0x74, 0x0c,
240+
0x6e, 0x74, 0x33, 0x32, 0x5f, 0x74, 0x10, 0x75,
241+
0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x74, 0x0c,
251242
0x69, 0x6e, 0x74, 0x38, 0x5f, 0x74, 0x0e, 0x69,
252243
0x6e, 0x74, 0x31, 0x36, 0x5f, 0x74, 0x0e, 0x69,
253244
0x6e, 0x74, 0x33, 0x32, 0x5f, 0x74, 0x0e, 0x69,
@@ -279,6 +270,19 @@ const uint8_t tjs__ffi[14095] = {
279270
0x67, 0x1e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64,
280271
0x20, 0x6c, 0x6f, 0x6e, 0x67, 0x20, 0x69, 0x6e,
281272
0x74, 0x10, 0x6c, 0x6f, 0x6e, 0x67, 0x20, 0x69,
273+
0x6e, 0x74, 0x24, 0x75, 0x6e, 0x73, 0x69, 0x67,
274+
0x6e, 0x65, 0x64, 0x20, 0x6c, 0x6f, 0x6e, 0x67,
275+
0x20, 0x6c, 0x6f, 0x6e, 0x67, 0x2c, 0x75, 0x6e,
276+
0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x20, 0x6c,
277+
0x6f, 0x6e, 0x67, 0x20, 0x6c, 0x6f, 0x6e, 0x67,
278+
0x20, 0x69, 0x6e, 0x74, 0x20, 0x73, 0x69, 0x67,
279+
0x6e, 0x65, 0x64, 0x20, 0x6c, 0x6f, 0x6e, 0x67,
280+
0x20, 0x6c, 0x6f, 0x6e, 0x67, 0x28, 0x73, 0x69,
281+
0x67, 0x6e, 0x65, 0x64, 0x20, 0x6c, 0x6f, 0x6e,
282+
0x67, 0x20, 0x6c, 0x6f, 0x6e, 0x67, 0x20, 0x69,
283+
0x6e, 0x74, 0x12, 0x6c, 0x6f, 0x6e, 0x67, 0x20,
284+
0x6c, 0x6f, 0x6e, 0x67, 0x1a, 0x6c, 0x6f, 0x6e,
285+
0x67, 0x20, 0x6c, 0x6f, 0x6e, 0x67, 0x20, 0x69,
282286
0x6e, 0x74, 0x0c, 0x73, 0x69, 0x7a, 0x65, 0x5f,
283287
0x74, 0x0e, 0x73, 0x73, 0x69, 0x7a, 0x65, 0x5f,
284288
0x74, 0x0a, 0x63, 0x68, 0x61, 0x72, 0x2a, 0x0c,
@@ -289,7 +293,7 @@ const uint8_t tjs__ffi[14095] = {
289293
0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x0d, 0xb2,
290294
0x03, 0x00, 0x01, 0x00, 0x18, 0x2c, 0x00, 0x00,
291295
0x0c, 0x20, 0x02, 0x01, 0x9e, 0x01, 0x00, 0x0b,
292-
0x00, 0x18, 0x19, 0x47, 0xa5, 0x0e, 0x0b, 0xea,
296+
0x00, 0x1a, 0x19, 0x47, 0xdb, 0x0e, 0x0b, 0xea,
293297
0x01, 0x03, 0x00, 0x70, 0xea, 0x01, 0x05, 0x00,
294298
0x70, 0xea, 0x01, 0x07, 0x00, 0x70, 0xea, 0x01,
295299
0x09, 0x00, 0x70, 0xb4, 0x03, 0x0a, 0x00, 0x70,
@@ -1632,140 +1636,147 @@ const uint8_t tjs__ffi[14095] = {
16321636
0x00, 0x4c, 0xb6, 0x01, 0x00, 0x00, 0x5e, 0x05,
16331637
0x00, 0x41, 0xb7, 0x01, 0x00, 0x00, 0x4c, 0xb8,
16341638
0x01, 0x00, 0x00, 0x5e, 0x05, 0x00, 0x41, 0xb9,
1635-
0x01, 0x00, 0x00, 0x4c, 0x60, 0x01, 0x00, 0x00,
1636-
0x5e, 0x05, 0x00, 0x41, 0xba, 0x01, 0x00, 0x00,
1637-
0x4c, 0xbb, 0x01, 0x00, 0x00, 0x5e, 0x09, 0x00,
1639+
0x01, 0x00, 0x00, 0x4c, 0xba, 0x01, 0x00, 0x00,
1640+
0x5e, 0x05, 0x00, 0x41, 0xbb, 0x01, 0x00, 0x00,
1641+
0x4c, 0xbc, 0x01, 0x00, 0x00, 0x5e, 0x05, 0x00,
1642+
0x41, 0xbd, 0x01, 0x00, 0x00, 0x4c, 0x60, 0x01,
1643+
0x00, 0x00, 0x5e, 0x05, 0x00, 0x41, 0xbe, 0x01,
1644+
0x00, 0x00, 0x4c, 0xbf, 0x01, 0x00, 0x00, 0x5e,
1645+
0x09, 0x00, 0x11, 0x5e, 0x05, 0x00, 0x41, 0x6e,
1646+
0x01, 0x00, 0x00, 0x0b, 0xbe, 0x25, 0x4d, 0x5c,
1647+
0x01, 0x00, 0x00, 0x4c, 0x5c, 0x01, 0x00, 0x00,
1648+
0xbe, 0x26, 0x4d, 0x5e, 0x01, 0x00, 0x00, 0x4c,
1649+
0x5e, 0x01, 0x00, 0x00, 0x04, 0x47, 0x00, 0x00,
1650+
0x00, 0x4c, 0x35, 0x00, 0x00, 0x00, 0x21, 0x02,
1651+
0x00, 0x4c, 0x47, 0x00, 0x00, 0x00, 0x5e, 0x09,
1652+
0x00, 0x11, 0x5e, 0x05, 0x00, 0x41, 0x6e, 0x01,
1653+
0x00, 0x00, 0x0b, 0xbe, 0x27, 0x4d, 0x5c, 0x01,
1654+
0x00, 0x00, 0x4c, 0x5c, 0x01, 0x00, 0x00, 0xbe,
1655+
0x28, 0x4d, 0x5e, 0x01, 0x00, 0x00, 0x4c, 0x5e,
1656+
0x01, 0x00, 0x00, 0x04, 0x47, 0x00, 0x00, 0x00,
1657+
0x4c, 0x35, 0x00, 0x00, 0x00, 0x21, 0x02, 0x00,
1658+
0x4c, 0xc0, 0x01, 0x00, 0x00, 0x5e, 0x09, 0x00,
16381659
0x11, 0x5e, 0x05, 0x00, 0x41, 0x6e, 0x01, 0x00,
1639-
0x00, 0x0b, 0xbe, 0x25, 0x4d, 0x5c, 0x01, 0x00,
1640-
0x00, 0x4c, 0x5c, 0x01, 0x00, 0x00, 0xbe, 0x26,
1660+
0x00, 0x0b, 0xbe, 0x29, 0x4d, 0x5c, 0x01, 0x00,
1661+
0x00, 0x4c, 0x5c, 0x01, 0x00, 0x00, 0xbe, 0x2a,
16411662
0x4d, 0x5e, 0x01, 0x00, 0x00, 0x4c, 0x5e, 0x01,
1642-
0x00, 0x00, 0x04, 0x47, 0x00, 0x00, 0x00, 0x4c,
1663+
0x00, 0x00, 0x04, 0x3e, 0x01, 0x00, 0x00, 0x4c,
16431664
0x35, 0x00, 0x00, 0x00, 0x21, 0x02, 0x00, 0x4c,
1644-
0x47, 0x00, 0x00, 0x00, 0x5e, 0x09, 0x00, 0x11,
1645-
0x5e, 0x05, 0x00, 0x41, 0x6e, 0x01, 0x00, 0x00,
1646-
0x0b, 0xbe, 0x27, 0x4d, 0x5c, 0x01, 0x00, 0x00,
1647-
0x4c, 0x5c, 0x01, 0x00, 0x00, 0xbe, 0x28, 0x4d,
1648-
0x5e, 0x01, 0x00, 0x00, 0x4c, 0x5e, 0x01, 0x00,
1649-
0x00, 0x04, 0x47, 0x00, 0x00, 0x00, 0x4c, 0x35,
1650-
0x00, 0x00, 0x00, 0x21, 0x02, 0x00, 0x4c, 0xbc,
1651-
0x01, 0x00, 0x00, 0x5e, 0x09, 0x00, 0x11, 0x5e,
1652-
0x05, 0x00, 0x41, 0x6e, 0x01, 0x00, 0x00, 0x0b,
1653-
0xbe, 0x29, 0x4d, 0x5c, 0x01, 0x00, 0x00, 0x4c,
1654-
0x5c, 0x01, 0x00, 0x00, 0xbe, 0x2a, 0x4d, 0x5e,
1655-
0x01, 0x00, 0x00, 0x4c, 0x5e, 0x01, 0x00, 0x00,
1656-
0x04, 0x3e, 0x01, 0x00, 0x00, 0x4c, 0x35, 0x00,
1657-
0x00, 0x00, 0x21, 0x02, 0x00, 0x4c, 0x3e, 0x01,
1658-
0x00, 0x00, 0x60, 0x0b, 0x00, 0x41, 0x95, 0x01,
1659-
0x00, 0x00, 0x04, 0xbd, 0x01, 0x00, 0x00, 0x26,
1665+
0x3e, 0x01, 0x00, 0x00, 0x60, 0x0b, 0x00, 0x41,
1666+
0x95, 0x01, 0x00, 0x00, 0x04, 0xc1, 0x01, 0x00,
1667+
0x00, 0x26, 0x01, 0x00, 0x26, 0x02, 0x00, 0x5e,
1668+
0x0b, 0x00, 0x41, 0x98, 0x01, 0x00, 0x00, 0x04,
1669+
0xc2, 0x01, 0x00, 0x00, 0x26, 0x01, 0x00, 0x26,
1670+
0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41, 0x9c, 0x01,
1671+
0x00, 0x00, 0x04, 0xc3, 0x01, 0x00, 0x00, 0x26,
16601672
0x01, 0x00, 0x26, 0x02, 0x00, 0x5e, 0x0b, 0x00,
1661-
0x41, 0x98, 0x01, 0x00, 0x00, 0x04, 0xbe, 0x01,
1673+
0x41, 0xa0, 0x01, 0x00, 0x00, 0x04, 0xc4, 0x01,
16621674
0x00, 0x00, 0x26, 0x01, 0x00, 0x26, 0x02, 0x00,
1663-
0x5e, 0x0b, 0x00, 0x41, 0x9c, 0x01, 0x00, 0x00,
1664-
0x04, 0xbf, 0x01, 0x00, 0x00, 0x04, 0xc0, 0x01,
1665-
0x00, 0x00, 0x04, 0xc1, 0x01, 0x00, 0x00, 0x04,
1666-
0xc2, 0x01, 0x00, 0x00, 0x04, 0xc3, 0x01, 0x00,
1667-
0x00, 0x26, 0x05, 0x00, 0x26, 0x02, 0x00, 0x5e,
1668-
0x0b, 0x00, 0x41, 0xa0, 0x01, 0x00, 0x00, 0x04,
1669-
0xc4, 0x01, 0x00, 0x00, 0x04, 0xc5, 0x01, 0x00,
1670-
0x00, 0x04, 0xc6, 0x01, 0x00, 0x00, 0x26, 0x03,
1675+
0x5e, 0x0b, 0x00, 0x41, 0x83, 0x01, 0x00, 0x00,
1676+
0x04, 0xc5, 0x01, 0x00, 0x00, 0x26, 0x01, 0x00,
1677+
0x26, 0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41, 0x9a,
1678+
0x01, 0x00, 0x00, 0x04, 0xc6, 0x01, 0x00, 0x00,
1679+
0x26, 0x01, 0x00, 0x26, 0x02, 0x00, 0x5e, 0x0b,
1680+
0x00, 0x41, 0x9e, 0x01, 0x00, 0x00, 0x04, 0xc7,
1681+
0x01, 0x00, 0x00, 0x26, 0x01, 0x00, 0x26, 0x02,
1682+
0x00, 0x5e, 0x0b, 0x00, 0x41, 0xa2, 0x01, 0x00,
1683+
0x00, 0x04, 0xc8, 0x01, 0x00, 0x00, 0x26, 0x01,
16711684
0x00, 0x26, 0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41,
1672-
0x83, 0x01, 0x00, 0x00, 0x04, 0xc7, 0x01, 0x00,
1685+
0xa4, 0x01, 0x00, 0x00, 0x04, 0xa4, 0x01, 0x00,
16731686
0x00, 0x26, 0x01, 0x00, 0x26, 0x02, 0x00, 0x5e,
1674-
0x0b, 0x00, 0x41, 0x9a, 0x01, 0x00, 0x00, 0x04,
1675-
0xc8, 0x01, 0x00, 0x00, 0x26, 0x01, 0x00, 0x26,
1676-
0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41, 0x9e, 0x01,
1687+
0x0b, 0x00, 0x41, 0xa6, 0x01, 0x00, 0x00, 0x04,
1688+
0xa6, 0x01, 0x00, 0x00, 0x26, 0x01, 0x00, 0x26,
1689+
0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41, 0x7a, 0x01,
16771690
0x00, 0x00, 0x04, 0xc9, 0x01, 0x00, 0x00, 0x26,
16781691
0x01, 0x00, 0x26, 0x02, 0x00, 0x5e, 0x0b, 0x00,
1679-
0x41, 0xa2, 0x01, 0x00, 0x00, 0x04, 0xca, 0x01,
1692+
0x41, 0xa8, 0x01, 0x00, 0x00, 0x04, 0xca, 0x01,
16801693
0x00, 0x00, 0x26, 0x01, 0x00, 0x26, 0x02, 0x00,
1681-
0x5e, 0x0b, 0x00, 0x41, 0xa4, 0x01, 0x00, 0x00,
1682-
0x04, 0xa4, 0x01, 0x00, 0x00, 0x26, 0x01, 0x00,
1683-
0x26, 0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41, 0xa6,
1684-
0x01, 0x00, 0x00, 0x04, 0xa6, 0x01, 0x00, 0x00,
1685-
0x26, 0x01, 0x00, 0x26, 0x02, 0x00, 0x5e, 0x0b,
1686-
0x00, 0x41, 0x7a, 0x01, 0x00, 0x00, 0x04, 0xcb,
1687-
0x01, 0x00, 0x00, 0x26, 0x01, 0x00, 0x26, 0x02,
1688-
0x00, 0x5e, 0x0b, 0x00, 0x41, 0xa8, 0x01, 0x00,
1689-
0x00, 0x04, 0xcc, 0x01, 0x00, 0x00, 0x26, 0x01,
1694+
0x5e, 0x0b, 0x00, 0x41, 0xaa, 0x01, 0x00, 0x00,
1695+
0x04, 0xcb, 0x01, 0x00, 0x00, 0x26, 0x01, 0x00,
1696+
0x26, 0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41, 0xac,
1697+
0x01, 0x00, 0x00, 0x04, 0xcc, 0x01, 0x00, 0x00,
1698+
0x04, 0xcd, 0x01, 0x00, 0x00, 0x26, 0x02, 0x00,
1699+
0x26, 0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41, 0xae,
1700+
0x01, 0x00, 0x00, 0x04, 0xce, 0x01, 0x00, 0x00,
1701+
0x04, 0xcf, 0x01, 0x00, 0x00, 0x26, 0x02, 0x00,
1702+
0x26, 0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41, 0xb0,
1703+
0x01, 0x00, 0x00, 0x04, 0xd0, 0x01, 0x00, 0x00,
1704+
0x04, 0xd1, 0x01, 0x00, 0x00, 0x04, 0xd2, 0x01,
1705+
0x00, 0x00, 0x26, 0x03, 0x00, 0x26, 0x02, 0x00,
1706+
0x5e, 0x0b, 0x00, 0x41, 0xb2, 0x01, 0x00, 0x00,
1707+
0x04, 0xd3, 0x01, 0x00, 0x00, 0x04, 0x23, 0x01,
1708+
0x00, 0x00, 0x26, 0x02, 0x00, 0x26, 0x02, 0x00,
1709+
0x5e, 0x0b, 0x00, 0x41, 0xb4, 0x01, 0x00, 0x00,
1710+
0x04, 0xd4, 0x01, 0x00, 0x00, 0x04, 0xd5, 0x01,
1711+
0x00, 0x00, 0x26, 0x02, 0x00, 0x26, 0x02, 0x00,
1712+
0x5e, 0x0b, 0x00, 0x41, 0xb6, 0x01, 0x00, 0x00,
1713+
0x04, 0xd6, 0x01, 0x00, 0x00, 0x04, 0xd7, 0x01,
1714+
0x00, 0x00, 0x26, 0x02, 0x00, 0x26, 0x02, 0x00,
1715+
0x5e, 0x0b, 0x00, 0x41, 0xb8, 0x01, 0x00, 0x00,
1716+
0x04, 0xd8, 0x01, 0x00, 0x00, 0x04, 0xd9, 0x01,
1717+
0x00, 0x00, 0x04, 0x21, 0x01, 0x00, 0x00, 0x04,
1718+
0xda, 0x01, 0x00, 0x00, 0x26, 0x04, 0x00, 0x26,
1719+
0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41, 0xba, 0x01,
1720+
0x00, 0x00, 0x04, 0xdb, 0x01, 0x00, 0x00, 0x04,
1721+
0xdc, 0x01, 0x00, 0x00, 0x26, 0x02, 0x00, 0x26,
1722+
0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41, 0xbc, 0x01,
1723+
0x00, 0x00, 0x04, 0xdd, 0x01, 0x00, 0x00, 0x04,
1724+
0xde, 0x01, 0x00, 0x00, 0x04, 0xdf, 0x01, 0x00,
1725+
0x00, 0x04, 0xe0, 0x01, 0x00, 0x00, 0x26, 0x04,
16901726
0x00, 0x26, 0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41,
1691-
0xaa, 0x01, 0x00, 0x00, 0x04, 0xcd, 0x01, 0x00,
1727+
0x60, 0x01, 0x00, 0x00, 0x04, 0xe1, 0x01, 0x00,
16921728
0x00, 0x26, 0x01, 0x00, 0x26, 0x02, 0x00, 0x5e,
1693-
0x0b, 0x00, 0x41, 0xac, 0x01, 0x00, 0x00, 0x04,
1694-
0xce, 0x01, 0x00, 0x00, 0x04, 0xcf, 0x01, 0x00,
1695-
0x00, 0x26, 0x02, 0x00, 0x26, 0x02, 0x00, 0x5e,
1696-
0x0b, 0x00, 0x41, 0xae, 0x01, 0x00, 0x00, 0x04,
1697-
0xd0, 0x01, 0x00, 0x00, 0x04, 0xd1, 0x01, 0x00,
1698-
0x00, 0x26, 0x02, 0x00, 0x26, 0x02, 0x00, 0x5e,
1699-
0x0b, 0x00, 0x41, 0xb0, 0x01, 0x00, 0x00, 0x04,
1700-
0xd2, 0x01, 0x00, 0x00, 0x04, 0xd3, 0x01, 0x00,
1701-
0x00, 0x04, 0xd4, 0x01, 0x00, 0x00, 0x26, 0x03,
1702-
0x00, 0x26, 0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41,
1703-
0xb2, 0x01, 0x00, 0x00, 0x04, 0xd5, 0x01, 0x00,
1704-
0x00, 0x04, 0x23, 0x01, 0x00, 0x00, 0x26, 0x02,
1705-
0x00, 0x26, 0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41,
1706-
0xb4, 0x01, 0x00, 0x00, 0x04, 0xd6, 0x01, 0x00,
1707-
0x00, 0x04, 0xd7, 0x01, 0x00, 0x00, 0x26, 0x02,
1708-
0x00, 0x26, 0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41,
1709-
0xb6, 0x01, 0x00, 0x00, 0x04, 0xd8, 0x01, 0x00,
1710-
0x00, 0x04, 0xd9, 0x01, 0x00, 0x00, 0x26, 0x02,
1711-
0x00, 0x26, 0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41,
1712-
0xb8, 0x01, 0x00, 0x00, 0x04, 0xda, 0x01, 0x00,
1713-
0x00, 0x04, 0xdb, 0x01, 0x00, 0x00, 0x04, 0x21,
1714-
0x01, 0x00, 0x00, 0x04, 0xdc, 0x01, 0x00, 0x00,
1715-
0x26, 0x04, 0x00, 0x26, 0x02, 0x00, 0x5e, 0x0b,
1716-
0x00, 0x41, 0x60, 0x01, 0x00, 0x00, 0x04, 0xdd,
1717-
0x01, 0x00, 0x00, 0x26, 0x01, 0x00, 0x26, 0x02,
1718-
0x00, 0x5e, 0x0b, 0x00, 0x41, 0xbb, 0x01, 0x00,
1719-
0x00, 0x04, 0xde, 0x01, 0x00, 0x00, 0x26, 0x01,
1720-
0x00, 0x26, 0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41,
1721-
0x47, 0x00, 0x00, 0x00, 0x04, 0xdf, 0x01, 0x00,
1722-
0x00, 0x26, 0x01, 0x00, 0x26, 0x02, 0x00, 0x26,
1723-
0x17, 0x00, 0x5f, 0x0c, 0x00, 0x61, 0x04, 0x00,
1724-
0x06, 0x61, 0x05, 0x00, 0xbd, 0x2c, 0x56, 0xda,
1725-
0x00, 0x00, 0x00, 0x00, 0xbe, 0x2d, 0x54, 0x4b,
1726-
0x01, 0x00, 0x00, 0x01, 0xbe, 0x2e, 0x54, 0x75,
1727-
0x01, 0x00, 0x00, 0x01, 0xbe, 0x2f, 0x54, 0x1a,
1728-
0x01, 0x00, 0x00, 0x01, 0xbe, 0x30, 0x54, 0xe0,
1729-
0x01, 0x00, 0x00, 0x01, 0xbe, 0x31, 0x54, 0xe1,
1730-
0x01, 0x00, 0x00, 0x00, 0xbe, 0x32, 0x54, 0xe2,
1731-
0x01, 0x00, 0x00, 0x00, 0x1b, 0xbe, 0x33, 0x54,
1732-
0xe3, 0x01, 0x00, 0x00, 0x00, 0xbe, 0x34, 0x54,
1733-
0x78, 0x01, 0x00, 0x00, 0x00, 0x1b, 0x06, 0xc1,
1734-
0x05, 0x0e, 0xc2, 0x04, 0x68, 0x05, 0x00, 0x68,
1735-
0x04, 0x00, 0x5f, 0x0e, 0x00, 0x5e, 0x09, 0x00,
1736-
0x61, 0x06, 0x00, 0xbd, 0x35, 0x56, 0xea, 0x00,
1737-
0x00, 0x00, 0x01, 0xbe, 0x36, 0x54, 0x5c, 0x01,
1738-
0x00, 0x00, 0x00, 0xbe, 0x37, 0x54, 0x5e, 0x01,
1739-
0x00, 0x00, 0x00, 0xbe, 0x38, 0x54, 0x1a, 0x01,
1740-
0x00, 0x00, 0x01, 0xbe, 0x39, 0x54, 0x75, 0x01,
1741-
0x00, 0x00, 0x01, 0x06, 0xc1, 0x06, 0x0e, 0x68,
1742-
0x06, 0x00, 0x5f, 0x0f, 0x00, 0x5e, 0x09, 0x00,
1743-
0x61, 0x07, 0x00, 0xbd, 0x3a, 0x56, 0xeb, 0x00,
1744-
0x00, 0x00, 0x01, 0xbe, 0x3b, 0x54, 0xe4, 0x01,
1745-
0x00, 0x00, 0x01, 0x06, 0xc1, 0x07, 0x0e, 0x68,
1746-
0x07, 0x00, 0x5f, 0x10, 0x00, 0x5e, 0x09, 0x00,
1747-
0x61, 0x08, 0x00, 0xbd, 0x3c, 0x56, 0xec, 0x00,
1748-
0x00, 0x00, 0x01, 0xbe, 0x3d, 0x54, 0x7b, 0x01,
1749-
0x00, 0x00, 0x01, 0xbe, 0x3e, 0x54, 0x30, 0x00,
1750-
0x00, 0x00, 0x01, 0xbe, 0x3f, 0x54, 0x60, 0x01,
1751-
0x00, 0x00, 0x01, 0x06, 0xc1, 0x08, 0x0e, 0x68,
1752-
0x08, 0x00, 0x60, 0x11, 0x00, 0x61, 0x09, 0x00,
1753-
0xbd, 0x40, 0x56, 0xed, 0x00, 0x00, 0x00, 0x01,
1754-
0xbe, 0x41, 0x54, 0x5c, 0x01, 0x00, 0x00, 0x00,
1755-
0xbe, 0x42, 0x54, 0x5e, 0x01, 0x00, 0x00, 0x00,
1756-
0x06, 0xc1, 0x09, 0x0e, 0x68, 0x09, 0x00, 0x5f,
1757-
0x12, 0x00, 0x06, 0x61, 0x0a, 0x00, 0xbd, 0x45,
1758-
0x56, 0xf0, 0x00, 0x00, 0x00, 0x00, 0xbe, 0x46,
1759-
0x54, 0x4b, 0x01, 0x00, 0x00, 0x01, 0x06, 0xc1,
1760-
0x0a, 0x0e, 0x68, 0x0a, 0x00, 0x5f, 0x15, 0x00,
1761-
0x06, 0x11, 0xf1, 0xea, 0x17, 0x70, 0x11, 0x41,
1762-
0x46, 0x01, 0x00, 0x00, 0x5f, 0x16, 0x00, 0x11,
1763-
0x41, 0x47, 0x01, 0x00, 0x00, 0x5f, 0x17, 0x00,
1764-
0x0e, 0xeb, 0x27, 0x0e, 0xdf, 0x0b, 0x5e, 0x10,
1765-
0x00, 0x4c, 0x42, 0x01, 0x00, 0x00, 0x5e, 0x0a,
1766-
0x00, 0x4c, 0x43, 0x01, 0x00, 0x00, 0x5e, 0x0f,
1767-
0x00, 0x4c, 0x44, 0x01, 0x00, 0x00, 0x5e, 0x0b,
1768-
0x00, 0x4c, 0x45, 0x01, 0x00, 0x00, 0xee, 0xeb,
1769-
0xc5, 0xde, 0x5f, 0x18, 0x00, 0x06, 0x2e,
1729+
0x0b, 0x00, 0x41, 0xbf, 0x01, 0x00, 0x00, 0x04,
1730+
0xe2, 0x01, 0x00, 0x00, 0x26, 0x01, 0x00, 0x26,
1731+
0x02, 0x00, 0x5e, 0x0b, 0x00, 0x41, 0x47, 0x00,
1732+
0x00, 0x00, 0x04, 0xe3, 0x01, 0x00, 0x00, 0x26,
1733+
0x01, 0x00, 0x26, 0x02, 0x00, 0x26, 0x19, 0x00,
1734+
0x5f, 0x0c, 0x00, 0x61, 0x04, 0x00, 0x06, 0x61,
1735+
0x05, 0x00, 0xbd, 0x2c, 0x56, 0xda, 0x00, 0x00,
1736+
0x00, 0x00, 0xbe, 0x2d, 0x54, 0x4b, 0x01, 0x00,
1737+
0x00, 0x01, 0xbe, 0x2e, 0x54, 0x75, 0x01, 0x00,
1738+
0x00, 0x01, 0xbe, 0x2f, 0x54, 0x1a, 0x01, 0x00,
1739+
0x00, 0x01, 0xbe, 0x30, 0x54, 0xe4, 0x01, 0x00,
1740+
0x00, 0x01, 0xbe, 0x31, 0x54, 0xe5, 0x01, 0x00,
1741+
0x00, 0x00, 0xbe, 0x32, 0x54, 0xe6, 0x01, 0x00,
1742+
0x00, 0x00, 0x1b, 0xbe, 0x33, 0x54, 0xe7, 0x01,
1743+
0x00, 0x00, 0x00, 0xbe, 0x34, 0x54, 0x78, 0x01,
1744+
0x00, 0x00, 0x00, 0x1b, 0x06, 0xc1, 0x05, 0x0e,
1745+
0xc2, 0x04, 0x68, 0x05, 0x00, 0x68, 0x04, 0x00,
1746+
0x5f, 0x0e, 0x00, 0x5e, 0x09, 0x00, 0x61, 0x06,
1747+
0x00, 0xbd, 0x35, 0x56, 0xea, 0x00, 0x00, 0x00,
1748+
0x01, 0xbe, 0x36, 0x54, 0x5c, 0x01, 0x00, 0x00,
1749+
0x00, 0xbe, 0x37, 0x54, 0x5e, 0x01, 0x00, 0x00,
1750+
0x00, 0xbe, 0x38, 0x54, 0x1a, 0x01, 0x00, 0x00,
1751+
0x01, 0xbe, 0x39, 0x54, 0x75, 0x01, 0x00, 0x00,
1752+
0x01, 0x06, 0xc1, 0x06, 0x0e, 0x68, 0x06, 0x00,
1753+
0x5f, 0x0f, 0x00, 0x5e, 0x09, 0x00, 0x61, 0x07,
1754+
0x00, 0xbd, 0x3a, 0x56, 0xeb, 0x00, 0x00, 0x00,
1755+
0x01, 0xbe, 0x3b, 0x54, 0xe8, 0x01, 0x00, 0x00,
1756+
0x01, 0x06, 0xc1, 0x07, 0x0e, 0x68, 0x07, 0x00,
1757+
0x5f, 0x10, 0x00, 0x5e, 0x09, 0x00, 0x61, 0x08,
1758+
0x00, 0xbd, 0x3c, 0x56, 0xec, 0x00, 0x00, 0x00,
1759+
0x01, 0xbe, 0x3d, 0x54, 0x7b, 0x01, 0x00, 0x00,
1760+
0x01, 0xbe, 0x3e, 0x54, 0x30, 0x00, 0x00, 0x00,
1761+
0x01, 0xbe, 0x3f, 0x54, 0x60, 0x01, 0x00, 0x00,
1762+
0x01, 0x06, 0xc1, 0x08, 0x0e, 0x68, 0x08, 0x00,
1763+
0x60, 0x11, 0x00, 0x61, 0x09, 0x00, 0xbd, 0x40,
1764+
0x56, 0xed, 0x00, 0x00, 0x00, 0x01, 0xbe, 0x41,
1765+
0x54, 0x5c, 0x01, 0x00, 0x00, 0x00, 0xbe, 0x42,
1766+
0x54, 0x5e, 0x01, 0x00, 0x00, 0x00, 0x06, 0xc1,
1767+
0x09, 0x0e, 0x68, 0x09, 0x00, 0x5f, 0x12, 0x00,
1768+
0x06, 0x61, 0x0a, 0x00, 0xbd, 0x45, 0x56, 0xf0,
1769+
0x00, 0x00, 0x00, 0x00, 0xbe, 0x46, 0x54, 0x4b,
1770+
0x01, 0x00, 0x00, 0x01, 0x06, 0xc1, 0x0a, 0x0e,
1771+
0x68, 0x0a, 0x00, 0x5f, 0x15, 0x00, 0x06, 0x11,
1772+
0xf1, 0xea, 0x17, 0x70, 0x11, 0x41, 0x46, 0x01,
1773+
0x00, 0x00, 0x5f, 0x16, 0x00, 0x11, 0x41, 0x47,
1774+
0x01, 0x00, 0x00, 0x5f, 0x17, 0x00, 0x0e, 0xeb,
1775+
0x27, 0x0e, 0xdf, 0x0b, 0x5e, 0x10, 0x00, 0x4c,
1776+
0x42, 0x01, 0x00, 0x00, 0x5e, 0x0a, 0x00, 0x4c,
1777+
0x43, 0x01, 0x00, 0x00, 0x5e, 0x0f, 0x00, 0x4c,
1778+
0x44, 0x01, 0x00, 0x00, 0x5e, 0x0b, 0x00, 0x4c,
1779+
0x45, 0x01, 0x00, 0x00, 0xee, 0xeb, 0xc5, 0xde,
1780+
0x5f, 0x18, 0x00, 0x06, 0x2e,
17701781
};
17711782

src/ffi.c

+14-1
Original file line numberDiff line numberDiff line change
@@ -1090,9 +1090,22 @@ static JSValue tjs__mod_ffi_init_js(JSContext *ctx, JSValue this_val, int argc,
10901090
#if SIZE_MAX == UINT32_MAX
10911091
ADD_ALIAS_TYPE(ctx, ffiobj, type_size, type_uint32);
10921092
ADD_ALIAS_TYPE(ctx, ffiobj, type_ssize, type_sint32);
1093-
#else
1093+
#elif SIZE_MAX == UINT64_MAX
10941094
ADD_ALIAS_TYPE(ctx, ffiobj, type_size, type_uint64);
10951095
ADD_ALIAS_TYPE(ctx, ffiobj, type_ssize, type_sint64);
1096+
#else
1097+
#error("unhandled size_t size")
1098+
#endif
1099+
1100+
#if ULLONG_MAX == UINT64_MAX
1101+
ADD_ALIAS_TYPE(ctx, ffiobj, type_ull, type_uint64);
1102+
#else
1103+
#error("unhandled unsigned long long size")
1104+
#endif
1105+
#if LLONG_MAX == INT64_MAX
1106+
ADD_ALIAS_TYPE(ctx, ffiobj, type_sll, type_sint64);
1107+
#else
1108+
#error("unhandled signed long long size")
10961109
#endif
10971110

10981111
// ffi also supports some complex types, currently not implemented

0 commit comments

Comments
 (0)