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) }