package vendor:libc-shim

⌘K
Ctrl+K
or
/

    Types

    Clock ¶

    Clock :: enum i32 {
    	Monotonic = 1, 
    }

    Related Procedures With Parameters

    FILE ¶

    FILE :: rawptr

    Related Procedures With Parameters

    Related Procedures With Returns

    Time_Spec ¶

    Time_Spec :: struct {
    	tv_sec:  i64,
    	tv_nsec: i64,
    }

    Related Procedures With Parameters

    clock_t ¶

    clock_t :: i64

    Related Procedures With Returns

    ldiv_t ¶

    ldiv_t :: struct {
    	quot: i32,
    	rem:  i32,
    }

    Related Procedures With Returns

    Constants

    ATEXIT_MAX ¶

    ATEXIT_MAX :: 32

    EOF ¶

    EOF :: -1

    Variables

    This section is empty.

    Procedures

    abort ¶

    @(require)
    @(linkage="strong")
    @(link_name="abort")
    abort :: proc "c" () -> ! {…}

    abs ¶

    @(require)
    @(linkage="strong")
    @(link_name="abs")
    abs :: proc "c" (x: i32) -> i32 {…}

    acos ¶

    @(require)
    @(linkage="strong")
    @(link_name="acos")
    acos :: proc "c" (x: f64) -> f64 {…}

    acosf ¶

    @(require)
    @(linkage="strong")
    @(link_name="acosf")
    acosf :: proc "c" (x: f32) -> f32 {…}

    aligned_alloc ¶

    @(require)
    @(linkage="strong")
    @(link_name="aligned_alloc")
    aligned_alloc :: proc "c" (alignment: uint, size: uint) -> rawptr {…}

    asin ¶

    @(require)
    @(linkage="strong")
    @(link_name="asin")
    asin :: proc "c" (x: f64) -> f64 {…}

    atan ¶

    @(require)
    @(linkage="strong")
    @(link_name="atan")
    atan :: proc "c" (x: f64) -> f64 {…}

    atan2 ¶

    @(require)
    @(linkage="strong")
    @(link_name="atan2")
    atan2 :: proc "c" (y, x: f64) -> f64 {…}

    atan2f ¶

    @(require)
    @(linkage="strong")
    @(link_name="atan2f")
    atan2f :: proc "c" (v: f32, v2: f32) -> f32 {…}

    atexit ¶

    @(require)
    @(linkage="strong")
    @(link_name="atexit")
    atexit :: proc "c" (function: proc "c" ()) -> i32 {…}

    atof ¶

    @(require)
    @(linkage="strong")
    @(link_name="atof")
    atof :: proc "c" (str: cstring) -> f64 {…}

    atoi ¶

    @(require)
    @(linkage="strong")
    @(link_name="atoi")
    atoi :: proc "c" (str: cstring) -> i32 {…}

    atol ¶

    @(require)
    @(linkage="strong")
    @(link_name="atol")
    atol :: proc "c" (str: cstring) -> i32 {…}

    atoll ¶

    @(require)
    @(linkage="strong")
    @(link_name="atoll")
    atoll :: proc "c" (str: cstring) -> i64 {…}

    ceil ¶

    @(require)
    @(linkage="strong")
    @(link_name="ceil")
    ceil :: proc "c" (x: f64) -> f64 {…}

    ceilf ¶

    @(require)
    @(linkage="strong")
    @(link_name="ceilf")
    ceilf :: proc "c" (x: f32) -> f32 {…}

    clock ¶

    @(require)
    @(linkage="strong")
    @(link_name="clock")
    clock :: proc "c" () -> i64 {…}

    clock_gettime ¶

    @(require)
    @(linkage="strong")
    @(link_name="clock_gettime")
    clock_gettime :: proc "c" (clockid: Clock, tp: ^Time_Spec) -> i32 {…}

    cos ¶

    @(require)
    @(linkage="strong")
    @(link_name="cos")
    cos :: proc "c" (x: f64) -> f64 {…}

    cosf ¶

    @(require)
    @(linkage="strong")
    @(link_name="cosf")
    cosf :: proc "c" (v: f32) -> f32 {…}

    exit ¶

    @(require)
    @(linkage="strong")
    @(link_name="exit")
    exit :: proc "c" (exit_code: i32) -> ! {…}

    exp ¶

    @(require)
    @(linkage="strong")
    @(link_name="exp")
    exp :: proc "c" (x: f64) -> f64 {…}

    fabs ¶

    @(require)
    @(linkage="strong")
    @(link_name="fabs")
    fabs :: proc "c" (x: f64) -> f64 {…}

    fabsf ¶

    @(require)
    @(linkage="strong")
    @(link_name="fabsf")
    fabsf :: proc "c" (x: f32) -> f32 {…}

    fclose ¶

    @(require)
    @(linkage="strong")
    @(link_name="fclose")
    fclose :: proc "c" (file: rawptr) -> i32 {…}

    floor ¶

    @(require)
    @(linkage="strong")
    @(link_name="floor")
    floor :: proc "c" (x: f64) -> f64 {…}

    floorf ¶

    @(require)
    @(linkage="strong")
    @(link_name="floorf")
    floorf :: proc "c" (x: f32) -> f32 {…}

    fmod ¶

    @(require)
    @(linkage="strong")
    @(link_name="fmod")
    fmod :: proc "c" (x, y: f64) -> f64 {…}

    fmodf ¶

    @(require)
    @(linkage="strong")
    @(link_name="fmodf")
    fmodf :: proc "c" (x, y: f32) -> f32 {…}

    fopen ¶

    @(require)
    @(linkage="strong")
    @(link_name="fopen")
    fopen :: proc "c" (path: cstring, mode: cstring) -> rawptr {…}

    fread ¶

    @(require)
    @(linkage="strong")
    @(link_name="fread")
    fread :: proc "c" (buffer: [^]u8, size: uint, count: uint, file: rawptr) -> uint {…}

    free ¶

    @(require)
    @(linkage="strong")
    @(link_name="free")
    free :: proc "c" (ptr: rawptr) {…}

    fseek ¶

    @(require)
    @(linkage="strong")
    @(link_name="fseek")
    fseek :: proc "c" (file: rawptr, offset: i32, whence: i32) -> i32 {…}

    ftell ¶

    @(require)
    @(linkage="strong")
    @(link_name="ftell")
    ftell :: proc "c" (file: rawptr) -> i32 {…}

    fwrite ¶

    @(require)
    @(linkage="strong")
    @(link_name="fwrite")
    fwrite :: proc "c" (buffer: [^]u8, size: uint, count: uint, file: rawptr) -> uint {…}

    getchar ¶

    @(require)
    @(linkage="strong")
    @(link_name="getchar")
    getchar :: proc "c" () -> i32 {…}

    init_context ¶

    @(init)
    init_context :: proc "contextless" () {…}

    isblank ¶

    @(require)
    @(linkage="strong")
    @(link_name="isblank")
    isblank :: proc "c" (c: i32) -> b32 {…}

    isdigit ¶

    @(require)
    @(linkage="strong")
    @(link_name="isdigit")
    isdigit :: proc "c" (c: i32) -> b32 {…}

    isfinited ¶

    @(require)
    @(linkage="strong")
    @(link_name="__isfinited")
    isfinited :: proc "c" (x: f64) -> bool {…}

    isfinitef ¶

    @(require)
    @(linkage="strong")
    @(link_name="__isfinitef")
    isfinitef :: proc "c" (x: f32) -> bool {…}

    isinfd ¶

    @(require)
    @(linkage="strong")
    @(link_name="__isinfd")
    isinfd :: proc "c" (v: f64) -> bool {…}

    isinff ¶

    @(require)
    @(linkage="strong")
    @(link_name="__isinff")
    isinff :: proc "c" (v: f32) -> bool {…}

    isnand ¶

    @(require)
    @(linkage="strong")
    @(link_name="__isnand")
    isnand :: proc "c" (v: f64) -> bool {…}

    isnanf ¶

    @(require)
    @(linkage="strong")
    @(link_name="__isnanf")
    isnanf :: proc "c" (v: f32) -> bool {…}

    isspace ¶

    @(require)
    @(linkage="strong")
    @(link_name="isspace")
    isspace :: proc "c" (c: i32) -> b32 {…}

    ldexp ¶

    @(require)
    @(linkage="strong")
    @(link_name="ldexp")
    ldexp :: proc "c" (x: f64, y: i32) -> f64 {…}

    ldiv ¶

    @(require)
    @(linkage="strong")
    @(link_name="ldiv")
    ldiv :: proc "c" (number: i32, denom: i32) -> ldiv_t {…}

    log ¶

    @(require)
    @(linkage="strong")
    @(link_name="log")
    log :: proc "c" (x: f64) -> f64 {…}

    log10 ¶

    @(require)
    @(linkage="strong")
    @(link_name="log10")
    log10 :: proc "c" (x: f64) -> f64 {…}

    log2 ¶

    @(require)
    @(linkage="strong")
    @(link_name="log2")
    log2 :: proc "c" (x: f64) -> f64 {…}

    logf ¶

    @(require)
    @(linkage="strong")
    @(link_name="logf")
    logf :: proc "c" (x: f32) -> f32 {…}

    malloc ¶

    @(require)
    @(linkage="strong")
    @(link_name="malloc")
    malloc :: proc "c" (size: uint) -> rawptr {…}

    memchr ¶

    @(require)
    @(linkage="strong")
    @(link_name="memchr")
    memchr :: proc "c" (str: [^]u8, c: i32, n: uint) -> [^]u8 {…}

    memcmp ¶

    @(require)
    @(linkage="strong")
    @(link_name="memcmp")
    memcmp :: proc "c" (lhs: [^]u8, rhs: [^]u8, count: uint) -> i32 {…}

    modf ¶

    @(require)
    @(linkage="strong")
    @(link_name="modf")
    modf :: proc "c" (num: f64, iptr: ^f64) -> f64 {…}

    pow ¶

    @(require)
    @(linkage="strong")
    @(link_name="pow")
    pow :: proc "c" (x, y: f64) -> f64 {…}

    powf ¶

    @(require)
    @(linkage="strong")
    @(link_name="powf")
    powf :: proc "c" (x, y: f32) -> f32 {…}

    putchar ¶

    @(require)
    @(linkage="strong")
    @(link_name="putchar")
    putchar :: proc "c" (char: i32) -> i32 {…}

    qsort ¶

    @(require)
    @(linkage="strong")
    @(link_name="qsort")
    qsort :: proc "c" (base: rawptr, num: uint, size: uint, cmp: proc "c" (a, b: rawptr) -> i32) {…}

    realloc ¶

    @(require)
    @(linkage="strong")
    @(link_name="realloc")
    realloc :: proc "c" (ptr: rawptr, new_size: uint) -> rawptr {…}

    remainderf ¶

    @(require)
    @(linkage="strong")
    @(link_name="remainderf")
    remainderf :: proc "c" (x, y: f32) -> f32 {…}

    sched_yield ¶

    @(require)
    @(linkage="strong")
    @(link_name="sched_yield")
    sched_yield :: proc "c" () -> i32 {…}

    set_context ¶

    set_context :: proc(ctx: runtime.Context = context) {…}
     

    NOTE: the allocator must respect an old_size of -1 on resizes!

    sin ¶

    @(require)
    @(linkage="strong")
    @(link_name="sin")
    sin :: proc "c" (x: f64) -> f64 {…}

    sinf ¶

    @(require)
    @(linkage="strong")
    @(link_name="sinf")
    sinf :: proc "c" (v: f32) -> f32 {…}

    sqrt ¶

    @(require)
    @(linkage="strong")
    @(link_name="sqrt")
    sqrt :: proc "c" (x: f64) -> f64 {…}

    sqrtf ¶

    @(require)
    @(linkage="strong")
    @(link_name="sqrtf")
    sqrtf :: proc "c" (v: f32) -> f32 {…}

    strchr ¶

    @(require)
    @(linkage="strong")
    @(link_name="strchr")
    strchr :: proc "c" (str: cstring, ch: i32) -> cstring {…}

    strcmp ¶

    @(require)
    @(linkage="strong")
    @(link_name="strcmp")
    strcmp :: proc "c" (lhs: cstring, rhs: cstring) -> i32 {…}

    strcpy ¶

    @(require)
    @(linkage="strong")
    @(link_name="strcpy")
    strcpy :: proc "c" (dst: [^]u8, src: cstring) -> cstring {…}

    strcspn ¶

    @(require)
    @(linkage="strong")
    @(link_name="strcspn")
    strcspn :: proc "c" (dst: cstring, src: cstring) -> uint {…}

    strlen ¶

    @(require)
    @(linkage="strong")
    @(link_name="strlen")
    strlen :: proc "c" (str: cstring) -> u32 {…}

    strncmp ¶

    @(require)
    @(linkage="strong")
    @(link_name="strncmp")
    strncmp :: proc "c" (lhs: cstring, rhs: cstring, count: uint) -> i32 {…}

    strncpy ¶

    @(require)
    @(linkage="strong")
    @(link_name="strncpy")
    strncpy :: proc "c" (dst: [^]u8, src: cstring, count: uint) -> cstring {…}

    strrchr ¶

    @(require)
    @(linkage="strong")
    @(link_name="strrchr")
    strrchr :: proc "c" (str: cstring, ch: i32) -> cstring {…}

    strstr ¶

    @(require)
    @(linkage="strong")
    @(link_name="strstr")
    strstr :: proc "c" (str: cstring, substr: cstring) -> cstring {…}

    strtod ¶

    @(require)
    @(linkage="strong")
    @(link_name="strtod")
    strtod :: proc "c" (str: cstring, str_end: ^cstring) -> f64 {…}

    strtol ¶

    @(require)
    @(linkage="strong")
    @(link_name="strtol")
    strtol :: proc "c" (str: cstring, str_end: ^cstring, base: i32) -> i32 {…}

    tan ¶

    @(require)
    @(linkage="strong")
    @(link_name="tan")
    tan :: proc "c" (x: f64) -> f64 {…}

    toupper ¶

    @(require)
    @(linkage="strong")
    @(link_name="toupper")
    toupper :: proc "c" (c: i32) -> i32 {…}

    trunc ¶

    @(require)
    @(linkage="strong")
    @(link_name="trunc")
    trunc :: proc "c" (x: f64) -> f64 {…}

    vfprintf ¶

    @(require)
    @(linkage="strong")
    @(link_name="vfprintf")
    vfprintf :: proc "c" (file: rawptr, fmt: cstring, args: ^.c_va_list) -> i32 {…}

    vsnprintf ¶

    @(require)
    @(linkage="strong")
    @(link_name="vsnprintf")
    vsnprintf :: proc "c" (buf: [^]u8, count: uint, fmt: cstring, args: ^.c_va_list) -> i32 {…}

    vsprintf ¶

    @(require)
    @(linkage="strong")
    @(link_name="vsprintf")
    vsprintf :: proc "c" (buf: [^]u8, fmt: cstring, args: ^.c_va_list) -> i32 {…}

    Procedure Groups

    This section is empty.

    Source Files

    Generation Information

    Generated with odin version dev-2026-09 (vendor "odin") Windows_amd64 @ 2026-09-15 23:21:38.874872500 +0000 UTC