diff options
Diffstat (limited to 'gcc/java/expr.c')
-rw-r--r-- | gcc/java/expr.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/java/expr.c b/gcc/java/expr.c index 3cc33ae..e61cd12 100644 --- a/gcc/java/expr.c +++ b/gcc/java/expr.c @@ -3523,13 +3523,14 @@ force_evaluation_order (tree node) /* Promote types smaller than integer. This is required by some ABIs. */ tree type = TREE_TYPE (TREE_VALUE (arg)); + tree saved; if (targetm.calls.promote_prototypes (type) && INTEGRAL_TYPE_P (type) && INT_CST_LT_UNSIGNED (TYPE_SIZE (type), TYPE_SIZE (integer_type_node))) TREE_VALUE (arg) = fold_convert (integer_type_node, TREE_VALUE (arg)); - tree saved = save_expr (force_evaluation_order (TREE_VALUE (arg))); + saved = save_expr (force_evaluation_order (TREE_VALUE (arg))); cmp = (cmp == NULL_TREE ? saved : build2 (COMPOUND_EXPR, void_type_node, cmp, saved)); TREE_VALUE (arg) = saved; |