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 most DECL
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 represent FIELD_DECL
.
struct tree_label_decl
This structure inherits from struct tree_decl_common
. It is
used to represent LABEL_DECL
.
struct tree_translation_unit_decl
This structure inherits from struct tree_decl_common
. It is
used to represent TRANSLATION_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 a
DECL
node.
struct tree_result_decl
This structure inherits from struct tree_decl_with_rtl
. It is
used to represent RESULT_DECL
.
struct tree_const_decl
This structure inherits from struct tree_decl_with_rtl
. It is
used to represent CONST_DECL
.
struct tree_parm_decl
This structure inherits from struct tree_decl_with_rtl
. It is
used to represent PARM_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 represent VAR_DECL
.
struct tree_function_decl
This structure inherits from struct tree_decl_with_vis
. It is
used to represent FUNCTION_DECL
.