core/c
c
Types
49FILE
FILE :: struct {}Sourcebool
bool :: builtin.boolSourcechar
char :: builtin.u8Sourceassuming -funsigned-char
complex_double
complex_double :: builtin.complex128Sourcecomplex_float
complex_float :: builtin.complex64Sourcedouble
double :: builtin.f64Sourcefloat
float :: builtin.f32Sourceint
int :: builtin.i32Sourceint16_t
int16_t :: builtin.i16Sourceint32_t
int32_t :: builtin.i32Sourceint64_t
int64_t :: builtin.i64Sourceint8_t
int8_t :: builtin.i8Source7.20.1 Integer types
int_fast16_t
int_fast16_t :: longSourceint_fast32_t
int_fast32_t :: longSourceint_fast64_t
int_fast64_t :: builtin.i64Sourceint_fast8_t
int_fast8_t :: builtin.i8Sourceint_least16_t
int_least16_t :: builtin.i16Sourceint_least32_t
int_least32_t :: builtin.i32Sourceint_least64_t
int_least64_t :: builtin.i64Sourceint_least8_t
int_least8_t :: builtin.i8SourceThese are all the same in multiple libc's for multiple architectures.
intmax_t
intmax_t :: builtin.i64Sourceintptr_t
intptr_t :: builtin.intSourcelong
long :: builtin.i32 when (ODIN_OS == .Windows || size_of(builtin.rawptr) == 4) else builtin.i64Sourcelonglong
longlong :: builtin.i64Sourceptrdiff_t
ptrdiff_t :: intSourceschar
schar :: builtin.i8Sourceshort
short :: builtin.i16Sourcesize_t
size_t :: builtin.uintSourcessize_t
ssize_t :: builtin.intSourceuchar
uchar :: builtin.u8Sourceuint
uint :: builtin.u32Sourceuint16_t
uint16_t :: builtin.u16Sourceuint32_t
uint32_t :: builtin.u32Sourceuint64_t
uint64_t :: builtin.u64Sourceuint8_t
uint8_t :: builtin.u8Sourceuint_fast16_t
uint_fast16_t :: ulongSourceuint_fast32_t
uint_fast32_t :: ulongSourceuint_fast64_t
uint_fast64_t :: builtin.u64Sourceuint_fast8_t
uint_fast8_t :: builtin.u8Sourceuint_least16_t
uint_least16_t :: builtin.u16Sourceuint_least32_t
uint_least32_t :: builtin.u32Sourceuint_least64_t
uint_least64_t :: builtin.u64Sourceuint_least8_t
uint_least8_t :: builtin.u8Sourceuintmax_t
uintmax_t :: builtin.u64Sourceuintptr_t
uintptr_t :: builtin.uintptrSourceulong
ulong :: builtin.u32 when (ODIN_OS == .Windows || size_of(builtin.rawptr) == 4) else builtin.u64Sourceulonglong
ulonglong :: builtin.u64Sourceushort
ushort :: builtin.u16Sourcewchar_t
wchar_t :: builtin.u16 when (ODIN_OS == .Windows) else builtin.u32SourceConstants
21CHAR_BIT
CHAR_BIT :: 8SourceINT16_MAX
INT16_MAX :: i32 = int(0x7fff)SourceINT16_MIN
INT16_MIN :: i32 = ~INT16_MAXSourceINT32_MAX
INT32_MAX :: i32 = int(0x7fffffff)SourceINT32_MIN
INT32_MIN :: i32 = ~INT32_MAXSourceINT64_MAX
INT64_MAX :: i64 = longlong(0x7fffffffffffffff)SourceINT64_MIN
INT64_MIN :: i64 = ~INT64_MAXSourceINT8_MAX
INT8_MAX :: i32 = int(0x7f)SourceCopy C's rules for type promotion here by forcing the type on the literals.
INT8_MIN
INT8_MIN :: i32 = ~INT8_MAXSourceNDEBUG
NDEBUG :: !ODIN_DEBUGSourceNULL
NULL :: rawptr = rawptr(uintptr(0))SourcePTRDIFF_MAX
PTRDIFF_MAX :: ptrdiff_t = max(ptrdiff_t)SourcePTRDIFF_MIN
PTRDIFF_MIN :: ptrdiff_t = min(ptrdiff_t)SourceSIZE_MAX
SIZE_MAX :: uint = max(size_t)SourceUINT16_MAX
UINT16_MAX :: i32 = int(0xffff)SourceUINT32_MAX
UINT32_MAX :: u32 = uint(0xffffffff)SourceUINT64_MAX
UINT64_MAX :: u64 = ulonglong(0xffffffffffffffff)SourceUINT8_MAX
UINT8_MAX :: i32 = int(0xff)SourceWCHAR_MAX
WCHAR_MAX :: u32 = max(wchar_t)SourceWCHAR_MIN
WCHAR_MIN :: u32 = min(wchar_t)Sourceva_list
va_list :: intrinsics.c_va_listSource