# tinyc

Dark Mode

- Manual
- Standard library
- Index
- Compiler docs
- Fusion docs

Search:

# Types

    PccState = ptr CcState

  Source Edit

    ErrorFunc = proc (opaque: pointer; msg: cstring) {...}{.cdecl.}

  Source Edit

# Consts

    OutputMemory: cint = 1

  output will be ran in memory (no output file) (default) Source Edit

    OutputExe: cint = 2

  executable file Source Edit

    OutputDll: cint = 3

  dynamic library Source Edit

    OutputObj: cint = 4

  object file Source Edit

    OutputPreprocess: cint = 5

  preprocessed file (used internally) Source Edit

# Procs

    proc openCCState(): PccState {...}{.importc: "tcc_new", cdecl.}

  create a new TCC compilation context Source Edit

    proc closeCCState(s: PccState) {...}{.importc: "tcc_delete", cdecl.}

  free a TCC compilation context Source Edit

    proc setErrorFunc(s: PccState; errorOpaque: pointer; errorFun: ErrorFunc) {...}{.
        cdecl, importc: "tcc_set_error_func".}

  set error/warning display callback Source Edit

    proc setOptions(s: PccState; options: cstring) {...}{.cdecl,
        importc: "tcc_set_options".}

  set a options Source Edit

    proc addIncludePath(s: PccState; pathname: cstring) {...}{.cdecl,
        importc: "tcc_add_include_path".}

  add include path Source Edit

    proc addSysincludePath(s: PccState; pathname: cstring) {...}{.cdecl,
        importc: "tcc_add_sysinclude_path".}

  add in system include path Source Edit

    proc defineSymbol(s: PccState; sym, value: cstring) {...}{.cdecl,
        importc: "tcc_define_symbol".}

  define preprocessor symbol 'sym'. Can put optional value Source Edit

    proc undefineSymbol(s: PccState; sym: cstring) {...}{.cdecl,
        importc: "tcc_undefine_symbol".}

  undefine preprocess symbol 'sym' Source Edit

    proc addFile(s: PccState; filename: cstring): cint {...}{.cdecl,
        importc: "tcc_add_file".}

  add a file (either a C file, dll, an object, a library or an ld script). Return -1 if error. Source Edit

    proc compileString(s: PccState; buf: cstring): cint {...}{.cdecl,
        importc: "tcc_compile_string".}

  compile a string containing a C source. Return non zero if error. Source Edit

    proc setOutputType(s: PccState; outputType: cint): cint {...}{.cdecl,
        importc: "tcc_set_output_type".}

  set output type. MUST BE CALLED before any compilation Source Edit

    proc addLibraryPath(s: PccState; pathname: cstring): cint {...}{.cdecl,
        importc: "tcc_add_library_path".}

  equivalent to -Lpath option Source Edit

    proc addLibrary(s: PccState; libraryname: cstring): cint {...}{.cdecl,
        importc: "tcc_add_library".}

  the library name is the same as the argument of the '-l' option Source Edit

    proc addSymbol(s: PccState; name: cstring; val: pointer): cint {...}{.cdecl,
        importc: "tcc_add_symbol".}

  add a symbol to the compiled program Source Edit

    proc outputFile(s: PccState; filename: cstring): cint {...}{.cdecl,
        importc: "tcc_output_file".}

  output an executable, library or object file. DO NOT call tcc_relocate() before. Source Edit

    proc run(s: PccState; argc: cint; argv: cstringArray): cint {...}{.cdecl,
        importc: "tcc_run".}

  link and run main() function and return its value. DO NOT call tcc_relocate() before. Source Edit

    proc relocate(s: PccState; p: pointer): cint {...}{.cdecl, importc: "tcc_relocate".}

  copy code into memory passed in by the caller and do all relocations (needed before using tcc_get_symbol()). returns -1 on error and required size if ptr is NULL Source Edit

    proc getSymbol(s: PccState; name: cstring): pointer {...}{.cdecl,
        importc: "tcc_get_symbol".}

  return symbol value or NULL if not found Source Edit

    proc setLibPath(s: PccState; path: cstring) {...}{.cdecl, importc: "tcc_set_lib_path".}

  set CONFIG_TCCDIR at runtime Source Edit