tinyc

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