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.

Source dinterpret.d

Expression ctfeInterpret(Expression e);
Entry point for CTFE. A compile-time result is required. Give an error if not possible.
e must be semantically valid expression. In other words, it should not contain any ErrorExps in it. But, CTFE interpretation will cross over functions and may invoke a function that contains ErrorStatement in its body. If that, the "CTFE failed because of previous errors" error is raised.
struct CompiledCtfeFunctionPimpl;
Typesafe PIMPL idiom so we can keep CompiledCtfeFunction private.