diff options
Diffstat (limited to 'gcc/ada/gcc-interface/utils.c')
-rw-r--r-- | gcc/ada/gcc-interface/utils.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/gcc/ada/gcc-interface/utils.c b/gcc/ada/gcc-interface/utils.c index baa4ca1..553ca3f 100644 --- a/gcc/ada/gcc-interface/utils.c +++ b/gcc/ada/gcc-interface/utils.c @@ -1861,7 +1861,7 @@ create_label_decl (tree label_name) /* Return a FUNCTION_DECL node. SUBPROG_NAME is the name of the subprogram, ASM_NAME is its assembler name, SUBPROG_TYPE is its type (a FUNCTION_TYPE node), PARAM_DECL_LIST is the list of the subprogram arguments (a list of - PARM_DECL nodes chained through the TREE_CHAIN field). + PARM_DECL nodes chained through the DECL_CHAIN field). INLINE_FLAG, PUBLIC_FLAG, EXTERN_FLAG, ARTIFICIAL_FLAG and ATTR_LIST are used to set the appropriate fields in the FUNCTION_DECL. GNAT_NODE is @@ -3039,10 +3039,10 @@ convert_vms_descriptor64 (tree gnu_type, tree gnu_expr, Entity_Id gnat_subprog) else if (TYPE_IS_FAT_POINTER_P (gnu_type)) { tree p_array_type = TREE_TYPE (TYPE_FIELDS (gnu_type)); - tree p_bounds_type = TREE_TYPE (TREE_CHAIN (TYPE_FIELDS (gnu_type))); + tree p_bounds_type = TREE_TYPE (DECL_CHAIN (TYPE_FIELDS (gnu_type))); tree template_type = TREE_TYPE (p_bounds_type); tree min_field = TYPE_FIELDS (template_type); - tree max_field = TREE_CHAIN (TYPE_FIELDS (template_type)); + tree max_field = DECL_CHAIN (TYPE_FIELDS (template_type)); tree template_tree, template_addr, aflags, dimct, t, u; /* See the head comment of build_vms_descriptor. */ int iklass = TREE_INT_CST_LOW (DECL_INITIAL (klass)); @@ -3079,11 +3079,11 @@ convert_vms_descriptor64 (tree gnu_type, tree gnu_expr, Entity_Id gnat_subprog) /* If so, there is already a template in the descriptor and it is located right after the POINTER field. The fields are 64bits so they must be repacked. */ - t = TREE_CHAIN (pointer); + t = DECL_CHAIN (pointer); lfield = build3 (COMPONENT_REF, TREE_TYPE (t), desc, t, NULL_TREE); lfield = convert (TREE_TYPE (TYPE_FIELDS (template_type)), lfield); - t = TREE_CHAIN (t); + t = DECL_CHAIN (t); ufield = build3 (COMPONENT_REF, TREE_TYPE (t), desc, t, NULL_TREE); ufield = convert (TREE_TYPE (DECL_CHAIN (TYPE_FIELDS (template_type))), ufield); @@ -3091,7 +3091,7 @@ convert_vms_descriptor64 (tree gnu_type, tree gnu_expr, Entity_Id gnat_subprog) /* Build the template in the form of a constructor. */ v = VEC_alloc (constructor_elt, gc, 2); CONSTRUCTOR_APPEND_ELT (v, TYPE_FIELDS (template_type), lfield); - CONSTRUCTOR_APPEND_ELT (v, TREE_CHAIN (TYPE_FIELDS (template_type)), + CONSTRUCTOR_APPEND_ELT (v, DECL_CHAIN (TYPE_FIELDS (template_type)), ufield); template_tree = gnat_build_constructor (template_type, v); @@ -3109,7 +3109,7 @@ convert_vms_descriptor64 (tree gnu_type, tree gnu_expr, Entity_Id gnat_subprog) aflags = build3 (COMPONENT_REF, TREE_TYPE (t), desc, t, NULL_TREE); /* The DIMCT field is the next field in the descriptor after aflags. */ - t = TREE_CHAIN (t); + t = DECL_CHAIN (t); dimct = build3 (COMPONENT_REF, TREE_TYPE (t), desc, t, NULL_TREE); /* Raise CONSTRAINT_ERROR if either more than 1 dimension or FL_COEFF or FL_BOUNDS not set. */ @@ -3131,7 +3131,7 @@ convert_vms_descriptor64 (tree gnu_type, tree gnu_expr, Entity_Id gnat_subprog) lfield = build3 (COMPONENT_REF, TREE_TYPE (t), desc, t, NULL_TREE); lfield = convert (TREE_TYPE (TYPE_FIELDS (template_type)), lfield); - t = TREE_CHAIN (t); + t = DECL_CHAIN (t); ufield = build3 (COMPONENT_REF, TREE_TYPE (t), desc, t, NULL_TREE); ufield = convert (TREE_TYPE (DECL_CHAIN (TYPE_FIELDS (template_type))), ufield); @@ -3193,10 +3193,10 @@ convert_vms_descriptor32 (tree gnu_type, tree gnu_expr, Entity_Id gnat_subprog) else if (TYPE_IS_FAT_POINTER_P (gnu_type)) { tree p_array_type = TREE_TYPE (TYPE_FIELDS (gnu_type)); - tree p_bounds_type = TREE_TYPE (TREE_CHAIN (TYPE_FIELDS (gnu_type))); + tree p_bounds_type = TREE_TYPE (DECL_CHAIN (TYPE_FIELDS (gnu_type))); tree template_type = TREE_TYPE (p_bounds_type); tree min_field = TYPE_FIELDS (template_type); - tree max_field = TREE_CHAIN (TYPE_FIELDS (template_type)); + tree max_field = DECL_CHAIN (TYPE_FIELDS (template_type)); tree template_tree, template_addr, aflags, dimct, t, u; /* See the head comment of build_vms_descriptor. */ int iklass = TREE_INT_CST_LOW (DECL_INITIAL (klass)); @@ -3231,7 +3231,7 @@ convert_vms_descriptor32 (tree gnu_type, tree gnu_expr, Entity_Id gnat_subprog) u = build_binary_op (EQ_EXPR, boolean_type_node, t, u); /* If so, there is already a template in the descriptor and it is located right after the POINTER field. */ - t = TREE_CHAIN (pointer); + t = DECL_CHAIN (pointer); template_tree = build3 (COMPONENT_REF, TREE_TYPE (t), desc, t, NULL_TREE); /* Otherwise use the {1, LENGTH} template we build above. */ @@ -3246,7 +3246,7 @@ convert_vms_descriptor32 (tree gnu_type, tree gnu_expr, Entity_Id gnat_subprog) t = DECL_CHAIN (DECL_CHAIN (DECL_CHAIN (pointer))); aflags = build3 (COMPONENT_REF, TREE_TYPE (t), desc, t, NULL_TREE); /* The DIMCT field is the 8th field in the descriptor. */ - t = TREE_CHAIN (t); + t = DECL_CHAIN (t); dimct = build3 (COMPONENT_REF, TREE_TYPE (t), desc, t, NULL_TREE); /* Raise CONSTRAINT_ERROR if either more than 1 dimension or FL_COEFF or FL_BOUNDS not set. */ |