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.


Compiler implementation of the D programming language.
This modules defines the help texts for the CLI options offered by DMD. This file is not shared with other compilers which use the DMD front-end. However, this file will be used to generate the online documentation and MAN pages.

Source cli.d

enum TargetOS: int;
Bit decoding of the TargetOS
bool isCurrentTargetOS(TargetOS os);
Checks whether os is the current TargetOS. For TargetOS.all it will always return true.
TargetOS os TargetOS to check
true iff os contains the current targetOS.
struct Usage;
Contains all available CLI Usage.Option">Usage.Options.
struct Option;
Representation of a CLI Option
The DDoc description ddoxText is only available when compiled with -version=DdocOptions.
string flag;
The CLI flag without leading -, e.g. color
string helpText;
A detailed description of the flag
TargetOS os;
For which TargetOS the flags are applicable
this(string flag, string helpText, TargetOS os = TargetOS.all);

this(string flag, string helpText, string ddocText, TargetOS os = TargetOS.all);
string flag CLI flag without leading -, e.g. color
string helpText detailed description of the flag
TargetOS os for which TargetOS the flags are applicable
string ddocText detailed description of the flag (in Ddoc)
static immutable Option[] options;
Returns all available CLI options
struct Transition;
Representation of a CLI transition
string bugzillaNumber;
bugzilla issue number (if existent)
string name;
name of the transition
static immutable Transition[] transitions;
Returns all available transitions
struct CLIUsage;
Formats the Options for CLI printing.
static string usage();
Returns a string of all available CLI options for the current targetOS. Options are separated by newlines.
static string mcpu();
CPU architectures supported -mcpu=id
static string transitionUsage();
Language changes listed by -transition=id