summaryrefslogtreecommitdiff
path: root/gcc/java
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/java')
-rw-r--r--gcc/java/class.c7
-rw-r--r--gcc/java/expr.c5
2 files changed, 6 insertions, 6 deletions
diff --git a/gcc/java/class.c b/gcc/java/class.c
index f806cea1414..a89b83183b6 100644
--- a/gcc/java/class.c
+++ b/gcc/java/class.c
@@ -2198,9 +2198,10 @@ make_class_data (tree type)
for (i = 0; i < count; i++)
{
- constructor_elt *elt = VEC_quick_push (constructor_elt, v, NULL);
- elt->index = build_int_cst (sizetype, i);
- elt->value = build_int_cstu (byte_type_node, data[i]);
+ constructor_elt elt;
+ elt.index = build_int_cst (sizetype, i);
+ elt.value = build_int_cstu (byte_type_node, data[i]);
+ VEC_quick_push (constructor_elt, v, elt);
}
DECL_INITIAL (array) = build_constructor (type, v);
diff --git a/gcc/java/expr.c b/gcc/java/expr.c
index 0429c02ca34..8041cdd99c4 100644
--- a/gcc/java/expr.c
+++ b/gcc/java/expr.c
@@ -2296,14 +2296,13 @@ get_symbol_table_index (tree t, tree special,
{
method_entry *e;
unsigned i;
+ method_entry elem = {t, special};
FOR_EACH_VEC_ELT (method_entry, *symbol_table, i, e)
if (t == e->method && special == e->special)
goto done;
- e = VEC_safe_push (method_entry, gc, *symbol_table, NULL);
- e->method = t;
- e->special = special;
+ VEC_safe_push (method_entry, gc, *symbol_table, elem);
done:
return i + 1;