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

Compiler implementation of the D programming language.

Functions

NameDescription
baseclass_dehydrate(pb) Dehydrate a baseclass_t.
baseclass_dehydrate(pb) Dehydrate a baseclass_t.
baseclass_find(bm, sbase) Look down baseclass list to find sbase.
baseclass_find(bm, sbase) Look down baseclass list to find sbase.
baseclass_hydrate(pb) Hydrate/dehydrate a baseclass_t.
baseclass_hydrate(pb) Hydrate/dehydrate a baseclass_t.
baseclass_nitems(b) Calculate number of baseclasses in list.
baseclass_nitems(b) Calculate number of baseclasses in list.
createglobalsymtab() Create a new symbol table.
createglobalsymtab() Create a new symbol table.
createlocalsymtab() Create a new symbol table.
createlocalsymtab() Create a new symbol table.
defsy(p, parent) Define symbol in specified symbol table.
defsy(p, parent) Define symbol in specified symbol table.
deletesymtab() Delete current symbol table and back up one.
deletesymtab() Delete current symbol table and back up one.
findsy(p, rover) Search for symbol in symbol table.
findsy(p, rover) Search for symbol in symbol table.
freesymtab(stab, n1, n2) Free up the symbol table, from symbols n1 through n2, not including n2.
freesymtab(stab, n1, n2) Free up the symbol table, from symbols n1 through n2, not including n2.
lookupsym(p) Search for symbol in multiple symbol tables, starting with most recently nested one.
lookupsym(p) Search for symbol in multiple symbol tables, starting with most recently nested one.
membersearchx(p, s) Symbol table search routine for members of structs, given that we don't know which struct it is in. Give error message if it appears more than once.
membersearchx(p, s) Symbol table search routine for members of structs, given that we don't know which struct it is in. Give error message if it appears more than once.
meminit_free(m) Delete symbol from symbol table, taking care to delete all children of a symbol. Make sure there are no more forward references (labels, tags).
meminit_free(m) Delete symbol from symbol table, taking care to delete all children of a symbol. Make sure there are no more forward references (labels, tags).
mptr_hydrate(pm) Hydrate/dehydrate an mptr_t.
mptr_hydrate(pm) Hydrate/dehydrate an mptr_t.
symbol_add(s) Add symbol to current symbol array.
symbol_add(s) Add symbol to current symbol array.
symbol_addtotree(parent, s) Insert symbol in specified symbol table.
symbol_addtotree(parent, s) Insert symbol in specified symbol table.
symbol_calloc(id) Create a new symbol.
symbol_calloc(id) Create a new symbol.
symbol_check(s) Check integrity of symbol data structure.
symbol_check(s) Check integrity of symbol data structure.
symbol_copy(s) Create a copy of a symbol.
symbol_copy(s) Create a copy of a symbol.
symbol_dehydrate(ps) Dehydrate a symbol.
symbol_dehydrate(ps) Dehydrate a symbol.
symbol_func(s) Add in the variants for a function symbol.
symbol_func(s) Add in the variants for a function symbol.
symbol_funcalias(sf) Create a symbol that is an alias to another function symbol.
symbol_funcalias(sf) Create a symbol that is an alias to another function symbol.
symbol_genauto(t) Generate an auto symbol, and add it to the symbol table.
symbol_genauto(e) Generate symbol into which we can copy the contents of expression e.
symbol_genauto(t) Generate an auto symbol, and add it to the symbol table.
symbol_genauto(e) Generate symbol into which we can copy the contents of expression e.
symbol_gendebuginfo() Symbol table search routine for members of structs, given that we don't know which struct it is in. Give error message if it appears more than once.
symbol_gendebuginfo() Symbol table search routine for members of structs, given that we don't know which struct it is in. Give error message if it appears more than once.
symbol_gendebuginfox(s) Generate debug info for global struct tag symbols.
symbol_gendebuginfox(s) Generate debug info for global struct tag symbols.
symbol_generate(sclass, t) Create a symbol, give it a name, storage class and type.
symbol_generate(sclass, t) Create a symbol, give it a name, storage class and type.
symbol_hydrate(ps) Hydrate a symbol.
symbol_hydrate(ps) Hydrate a symbol.
symbol_ident(s) Get user name of symbol.
symbol_ident(s) Get user name of symbol.
symbol_insert(symtab, s, n) Insert s into symtab at position n.
symbol_insert(symtab, s, n) Insert s into symtab at position n.
Symbol_isAffected(s) Determine if s may be affected if an assignment is done through a pointer.
Symbol_isAffected(s) Determine if s may be affected if an assignment is done through a pointer.
symbol_keep(s) Keep symbol around until symbol_term().
symbol_keep(s) Keep symbol around until symbol_term().
symbol_membersearch(id) Symbol table search routine for members of structs, given that we don't know which struct it is in. Give error message if it appears more than once.
symbol_membersearch(id) Symbol table search routine for members of structs, given that we don't know which struct it is in. Give error message if it appears more than once.
symbol_name(name, sclass, t) Create a symbol, given a name and type.
symbol_name(name, sclass, t) Create a symbol, given a name and type.
Symbol_needThis(s) Determine if symbol needs a 'this' pointer.
Symbol_needThis(s) Determine if symbol needs a 'this' pointer.
symbol_pointerType(s) Determine pointer type needed to access a Symbol, essentially what type an OPrelconst should get for that Symbol.
symbol_pointerType(s) Determine pointer type needed to access a Symbol, essentially what type an OPrelconst should get for that Symbol.
symbol_print(s) Type out symbol information.
symbol_print(s) Type out symbol information.
symbol_reset(s) Reset Symbol so that it's now an "extern" to the next obj file being created.
symbol_reset(s) Reset Symbol so that it's now an "extern" to the next obj file being created.
Symbol_Salignsize(s) Return alignment of symbol.
Symbol_Salignsize(s) Return alignment of symbol.
symbol_search(id) Search for symbol in sequence of symbol tables.
symbol_search(id) Search for symbol in sequence of symbol tables.
symbol_searchlist(sl, vident) Search list for a symbol with an identifier that matches.
symbol_searchlist(sl, vident) Search list for a symbol with an identifier that matches.
Symbol_Sisdead(s, anyInlineAsm) Aver if Symbol is not only merely dead, but really most sincerely dead.
Symbol_Sisdead(s, anyInlineAsm) Aver if Symbol is not only merely dead, but really most sincerely dead.
symbol_struct_addField(s, name, t, offset) Add a field to a struct s.
symbol_struct_addField(s, name, t, offset) Add a field to a struct s.
symbol_symdefs_dehydrate(ps) Dehydrate threaded list of symbols.
symbol_symdefs_dehydrate(ps) Dehydrate threaded list of symbols.
symbol_symdefs_hydrate(psx, parent, flag) Hydrate threaded list of symbols.
symbol_symdefs_hydrate(psx, parent, flag) Hydrate threaded list of symbols.
symbol_tree_check(s) Check integrity of symbol data structure.
symbol_tree_check(s) Check integrity of symbol data structure.
symbol_tree_dehydrate(ps) Dehydrate a symbol tree.
symbol_tree_dehydrate(ps) Dehydrate a symbol tree.
symbol_tree_hydrate(ps) Hydrate a symbol tree.
symbol_tree_hydrate(ps) Hydrate a symbol tree.
symbol_undef(s) Undefine a symbol. Assume error msg was already printed.
symbol_undef(s) Undefine a symbol. Assume error msg was already printed.
symboltable_clean(s) Go through symbol table preparing it to be written to a precompiled header. That means removing references to things in the .OBJ file.
symboltable_clean(s) Go through symbol table preparing it to be written to a precompiled header. That means removing references to things in the .OBJ file.
symboltable_hydrate(s, parent) Put symbol table s into parent symbol table.
symboltable_hydrate(s, parent) Put symbol table s into parent symbol table.
symtab_realloc(tab, symmax) Allocate/free symbol table.
symtab_realloc(tab, symmax) Allocate/free symbol table.

Structs

NameDescription
Paramblock Symbol table search routine for members of structs, given that we don't know which struct it is in. Give error message if it appears more than once.
Paramblock Symbol table search routine for members of structs, given that we don't know which struct it is in. Give error message if it appears more than once.

Authors

Walter Bright

License

Boost License 1.0