View source code
Display the source code in dmd/backend/cc.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.

Module dmd.backend.cc

Compiler implementation of the D programming language.

Functions

NameDescription
ehmethod(f)
list_symbol(lst) Symbol Table

Structs

NameDescription
baseclass_t Base classes are a list of these.
BlockRange Range for blocks.
Cstate Global variables.
dt_t Data definitions DTibytes 1..7 bytes DTabytes offset of bytes of data a { a data bytes } DTnbytes bytes of data a { a data bytes } a = offset DTazeros # of 0 bytes a DTsymsize same as DTazeros, but the type of the symbol gives the size DTcommon # of 0 bytes (in a common block) a DTxoff offset from symbol w a w = symbol number (pointer for CPP) a = offset DTcoff offset into code segment
EEcontext This is to support compiling expressions within the context of a function.
meminit_t Item in list for member initializer.
Pstate Current 'state' of the compiler. Used to gather together most global variables. This struct is saved/restored during function body parsing.
Srcpos Position in source file
template_t Special information for class templates.
TME Information gathered about primary member template explicit specialization.
TMF Information gathered about externally defined template member functions, member data, and member classes.
TMNE Information gathered about nested explicit specializations.
TMNF Information gathered about nested class friends.

Manifest constants

NameTypeDescription
IDMAX Print out debugging information.

Aliases

NameTypeDescription
BC int Basic block control flow operators.
ClassDeclaration_ void* Basic blocks: Basic blocks are a linked list of all the basic blocks in a function. startblock heads the list.
enum_flags_t uint Special information for enums.
FL int Element types. These should be combined with storage classes.
func_flags_t uint Functions
mptr_flags_t char For virtual tables.
pflags_t uint Function parameters: Pident identifier of parameter Ptype type of argument Pelem default value for argument Psym symbol corresponding to Pident when using the parameter list as a symbol table For template-parameter-list: Pident identifier of parameter Ptype if NULL, this is a type-parameter else the type for a parameter-declaration value argument Pelem default value for value argument Pdeftype default value for type-parameter Pptpl template-parameter-list for template-template-parameter Psym default value for template-template-parameter For template-arg-list: (actual arguments) Pident NULL Ptype type-name Pelem expression (either Ptype or Pelem is NULL) Psym SCtemplate for template-template-argument
struct_flags_t uint Special information for structs.

Authors

Walter Bright

License

Boost License 1.0