Defines the basic types used by `C` programs for foreign function and data structure interop.

Collection Info

View Source
Collection
core
Path
c
Entries
70

Source Files

Constants

20

INT8_MAX #

Source
INT8_MAX :: int(0x7f)

Copy C's rules for type promotion here by forcing the type on the literals.

Types

50

int_least8_t #

Source
int_least8_t :: i8

These are all the same in multiple libc's for multiple architectures.

va_list #

Source
va_list :: va_list

Since there are no types in C with an alignment larger than that of max_align_t, which cannot be larger than sizeof(long double) as any other exposed type wouldn't be valid C, the maximum alignment possible in a strictly conformant C implementation is 16 on the platforms we care about. The choice of 4096 bytes for storage of this type is more than enough on all relevant platforms.