c interop type foundation

This commit is contained in:
2026-06-12 18:10:52 +02:00
parent d2f0d16795
commit 4e860b033e
27 changed files with 3523 additions and 380 deletions
+29
View File
@@ -0,0 +1,29 @@
Buffer :: c_struct {
data *c_char
length c_ulong
}
get_buffer :: c_func() @Buffer
verify :: c_func(
char_value c_char,
schar_value c_schar,
uchar_value c_uchar,
short_value c_short,
ushort_value c_ushort,
int_value c_int,
uint_value c_uint,
long_value c_long,
ulong_value c_ulong,
longlong_value c_longlong,
ulonglong_value c_ulonglong,
float_value c_float,
double_value c_double,
longdouble_value c_longdouble,
) i32
main :: func() i32 {
buffer @Buffer :: get_buffer()
_ = buffer^.data
_ = buffer^.length
return verify(1, -2, 3, -4, 5, -6, 7, -8, 9, -10, 11, 12.0, 13.0, 14.0)
}