Next: Adding new DECL node types, Up: Internal structure
9.5.2.1 Current structure hierarchy
struct tree_decl_minimal
- This is the minimal structure to inherit from in order for common
DECL
macros to work. The fields it contains are a unique ID, source location, context, and name. struct tree_decl_common
- This structure inherits from
struct tree_decl_minimal
. It contains fields that mostDECL
nodes need, such as a field to store alignment, machine mode, size, and attributes. struct tree_field_decl
- This structure inherits from
struct tree_decl_common
. It is used to representFIELD_DECL
. struct tree_label_decl
- This structure inherits from
struct tree_decl_common
. It is used to representLABEL_DECL
. struct tree_translation_unit_decl
- This structure inherits from
struct tree_decl_common
. It is used to representTRANSLATION_UNIT_DECL
. struct tree_decl_with_rtl
- This structure inherits from
struct tree_decl_common
. It contains a field to store the low-level RTL associated with aDECL
node. struct tree_result_decl
- This structure inherits from
struct tree_decl_with_rtl
. It is used to representRESULT_DECL
. struct tree_const_decl
- This structure inherits from
struct tree_decl_with_rtl
. It is used to representCONST_DECL
. struct tree_parm_decl
- This structure inherits from
struct tree_decl_with_rtl
. It is used to representPARM_DECL
. struct tree_decl_with_vis
- This structure inherits from
struct tree_decl_with_rtl
. It contains fields necessary to store visibility information, as well as a section name and assembler name. struct tree_var_decl
- This structure inherits from
struct tree_decl_with_vis
. It is used to representVAR_DECL
. struct tree_function_decl
- This structure inherits from
struct tree_decl_with_vis
. It is used to representFUNCTION_DECL
.