View source code
Display the source code in dmd/link.d from which this page was generated on github.
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 local clone.

Function dmd.link.runPreprocessor

Run the C preprocessor.

int runPreprocessor (
  ref const(Loc) loc,
  const(char)[] cpp,
  const(char)[] filename,
  const(char)* importc_h,
  ref dmd.root.array.Array!(const(char)*) cppswitches,
  bool verbose,
  ErrorSink eSink,
  ref OutBuffer defines,
  out DArray!(ubyte) text
);

Parameters

NameDescription
loc source location where preprocess is requested from
cpp name of C preprocessor program
filename C source file name
importc_h filename of importc.h
cppswitches array of switches to pass to C preprocessor
verbose print progress to eSink
eSink for verbose messages and error messages
defines buffer to append any #define and #undef lines encountered to
text set to preprocessed text

Returns

error status, 0 for success

Authors

Walter Bright

License

Boost License 1.0