summaryrefslogtreecommitdiff
path: root/gcc/ada/trans.c
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2004-06-23 07:43:21 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2004-06-23 07:43:21 +0000
commitb64311263afb0341bc5cc019230b6d5f6d1b185a (patch)
tree8a64183917aa821491a290388a2d847ef5f31dc6 /gcc/ada/trans.c
parentd7c19af34733348ff30e9c8d1b11695aa079150c (diff)
downloadgcc-b64311263afb0341bc5cc019230b6d5f6d1b185a.tar.gz
* c-gimplify.c (gimplify_decl_stmt): Update gimplify_type_sizes call.
Use gimplify_and_add. * c-typeck.c (c_finish_if_stmt): Use NULL instead of empty stmt. * gimplify.c (build_and_jump, gimplify_exit_expr, gimplify_init_constructor, gimplify_save_expr, gimple_push_cleanup, gimplify_stmt, gimplify_expr): Likewise. (shortcut_cond_expr): Handle NULL arms of COND_EXPR. (gimplify_statement_list): Remove NULL entries. (gimplify_to_stmt_list): Handle NULL results. (gimplify_type_sizes): Add list_p argument. (gimplify_one_sizepos): Don't use internal pre/post queue. * tree-gimple.h (gimplify_type_sizes): Update. ada/ * trans.c (gnat_gimplify_stmt): Update gimplify_type_sizes call. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83539 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/trans.c')
-rw-r--r--gcc/ada/trans.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/gcc/ada/trans.c b/gcc/ada/trans.c
index b6e9abcfcea..b321ef9c6ac 100644
--- a/gcc/ada/trans.c
+++ b/gcc/ada/trans.c
@@ -4280,11 +4280,11 @@ gnat_gimplify_stmt (tree *stmt_p)
{
tree var = DECL_STMT_VAR (stmt);
+ *stmt_p = NULL_TREE;
if (TREE_CODE (var) == TYPE_DECL)
- *stmt_p = gimplify_type_sizes (TREE_TYPE (var));
+ gimplify_type_sizes (TREE_TYPE (var), stmt_p);
else if (TREE_CODE (var) == VAR_DECL)
{
- *stmt_p = NULL_TREE;
gimplify_one_sizepos (&DECL_SIZE (var), stmt_p);
gimplify_one_sizepos (&DECL_SIZE_UNIT (var), stmt_p);
@@ -4302,12 +4302,7 @@ gnat_gimplify_stmt (tree *stmt_p)
NULL_TREE))),
stmt_p);
}
-
- if (*stmt_p == NULL_TREE)
- *stmt_p = alloc_stmt_list ();
}
- else
- *stmt_p = alloc_stmt_list ();
return GS_ALL_DONE;
}