aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/gcc-interface/utils2.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ada/gcc-interface/utils2.c')
-rw-r--r--gcc/ada/gcc-interface/utils2.c26
1 files changed, 1 insertions, 25 deletions
diff --git a/gcc/ada/gcc-interface/utils2.c b/gcc/ada/gcc-interface/utils2.c
index 1ed1b9f..1424ac8 100644
--- a/gcc/ada/gcc-interface/utils2.c
+++ b/gcc/ada/gcc-interface/utils2.c
@@ -2156,37 +2156,13 @@ build_allocator (tree type, tree init, tree result_type, Entity_Id gnat_proc,
alternate 64bit descriptor. */
tree
-fill_vms_descriptor (tree expr, Entity_Id gnat_formal, Node_Id gnat_actual)
+fill_vms_descriptor (tree expr, Entity_Id gnat_formal)
{
tree field;
tree parm_decl = get_gnu_tree (gnat_formal);
tree const_list = NULL_TREE;
- int size;
tree record_type;
- /* A string literal will always be in 32bit space on VMS. Where
- will it be on other 64bit systems???
- An identifier's allocation may be unknown at compile time.
- An explicit dereference could be either in 32bit or 64bit space.
- Don't know about other possibilities, so assume unknown which
- will result in fetching the 64bit descriptor. ??? */
- if (Nkind (gnat_actual) == N_String_Literal)
- size = 32;
- else if (Nkind (gnat_actual) == N_Identifier)
- size = UI_To_Int (Esize (Etype (gnat_actual)));
- else if (Nkind (gnat_actual) == N_Explicit_Dereference)
- size = UI_To_Int (Esize (Etype (Prefix (gnat_actual))));
- else
- size = 0;
-
- /* If size is unknown, make it POINTER_SIZE */
- if (size == 0)
- size = POINTER_SIZE;
-
- /* If size is 64bits grab the alternate 64bit descriptor. */
- if (size == 64)
- TREE_TYPE (parm_decl) = DECL_PARM_ALT (parm_decl);
-
record_type = TREE_TYPE (TREE_TYPE (parm_decl));
expr = maybe_unconstrained_array (expr);
gnat_mark_addressable (expr);