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.
ddmd.backend.cc
Compiler implementation of the
D programming language.
Authors:
License:
Distributed under the Boost Software License, Version 1.0.
http: //www.boost.org/LICENSE_1_0.txt
Source:
https: //github.com/dlang/dmd/blob/master/src/ddmd/backend/cc.d
- enum int
IDMAX
; - Print out debugging information.
- struct
Srcpos
; - Position in source file
- struct
Pstate
; - Current 'state' of the compiler. Used to gather together most global variables. This struct is saved/restored during function body parsing.
- struct
Cstate
; - Global variables.
- alias
ClassDeclaration_
= void*; - Basic blocks: Basic blocks are a linked list of all the basic blocks in a function. startblock heads the list.
- alias
BC
= int; - Basic block control flow operators.
- struct
symtab_t
; - Functions
- struct
meminit_t
; - Item in list for member initializer.
- struct
baseclass_t
; - Base classes are a list of these.
- alias
mptr_flags_t
= char; - For virtual tables.
- struct
TMF
; - Information gathered about externally defined template member functions, member data, and member classes.
- struct
TME
; - Information gathered about primary member template explicit specialization.
- struct
TMNE
; - Information gathered about nested explicit specializations.
- struct
TMNF
; - Information gathered about nested class friends.
- struct
template_t
; - Special information for class templates.
- alias
enum_flags_t
= uint; - Special information for enums.
- alias
struct_flags_t
= uint; - Special information for structs.
- nothrow @nogc Symbol*
list_symbol
(list_tlst
); - Symbol Table
- alias
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
- alias
FL
= int; - Element types. These should be combined with storage classes.
- struct
EEcontext
; - SrcfilesCollect information about a source file. Source files are referred to by a pointer into pfiles[]. This is so that when PH files are hydrated, only pfiles[] needs updating. Of course, this means that pfiles[] cannot be reallocated to larger numbers, its size is fixed at SRCFILES_MAX. Sfile *arr; // array of Sfiles This is to support compiling expressions within the context of a function.
- struct
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
Copyright © 1999-2017 by the D Language Foundation | Page generated by
Ddoc on Wed Jul 19 22:16:54 2017