Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using a local clone.

dmd.link

Invoke the linker as a separate process.
Authors:

Source link.d

int runLINK(bool verbose, ErrorSink eSink);
Run the linker.
Parameters:
bool verbose print command to be executed
ErrorSink eSink message sink
Returns:
status of execution. STATUS_FAILED if failed for other reasons
int runProgram(const char[] exefile, const char*[] runargs, bool verbose, ErrorSink eSink);
Run the compiled program.
Parameters:
char[] exefile program name
char*[] runargs arguments to exefile
bool verbose print command to be executed
ErrorSink eSink message sink
Returns:
exit status
int runPreprocessor(const ref Loc loc, const(char)[] cpp, const(char)[] filename, const(char)* importc_h, ref Array!(const(char)*) cppswitches, bool verbose, ErrorSink eSink, ref OutBuffer defines, out DArray!ubyte text);
Run the C preprocessor.
Parameters:
Loc loc source location where preprocess is requested from
const(char)[] cpp name of C preprocessor program
const(char)[] filename C source file name
const(char)* importc_h filename of importc.h
Array!(const(char)*) cppswitches array of switches to pass to C preprocessor
bool verbose print progress to eSink
ErrorSink eSink for verbose messages and error messages
OutBuffer defines buffer to append any #define and #undef lines encountered to
DArray!ubyte text set to preprocessed text
Returns:
error status, 0 for success
void parseLinkerOutput(const(char)[] linkerOutput, ErrorSink eSink);
Translate linker output to more user-friendly error messages, by extracting mangled symbols and demangling them
Parameters:
const(char)[] linkerOutput text that the linker printed
ErrorSink eSink sink for translated errors