Allocate a param_t of type t, and append it to parameter list.
Allocate a param_t.
Free parameter list. Output: paramlst = null
Version of param_free() suitable for list_free().
Search for member, create symbol as needed. Used for symbol tables for VLA's such as: void func(int n, int an);
Create template-argument-list blank from template-parameter-list Input: ptali initial template-argument-list
Compute number of parameters
Pretty-print a param_t
Look for Pident matching id
Look for Pident matching id
Return the size of a type for alignment purposes.
Create a type & initialize it. Input: ty = TYxxxx
Allocate a TYtemplate.
Allocate a TYmemptr type.
Allocate a type of ty with a Tnext of tn.
Allocate an associative array type, which are key=value pairs
Make copy of a type.
Dehydrate a type.
Allocate a delegate type.
Allocate a dynamic array type.
Recursively check if type u is embedded in type t.
Create an enum type. Input: name name of enum tbase "base" type of enum
Fake a type & initialize it. Input: ty = TYxxxx
Free up data type.
Allocation a function type.
Determine if type t is a dependent type.
Determine if type is a VLA.
Compute the size of a single parameter.
Compute the total size of parameters for function call. Used for stdcall name mangling. Note that hidden parameters do not contribute to size.
Allocate a pointer type.
Pretty-print a type.
Set/clear const and volatile bits in *pt according to the settings in cv.
Create a 'dependent' version of type t.
Set dimension of array.
Modify the Tmangle field of a type.
Modify the tym_t field of a type.
Set type field of some object to t.
Compute size of type in bytes. Mark size as known after error message if it is not known. Instantiate templates as needed to compute size.
Compute size of type in bytes.
Allocate a static array type.
Create a struct/union/class type.
Free type_list.
Compute special zero sized struct.
A cheap version of exp2.typematch() and exp2.paramlstmatch(), so that we can get cpp_mangle() to work for MARS. It's less complex because it doesn't do templates and can rely on strict typechecking.
Compiler implementation of the D programming language.