mirror of git://gcc.gnu.org/git/gcc.git
trans-expr.c (gfc_copy_class_to_class, [...]): Free loop and ss data.
2012-08-22 Tobias Burnus <burnus@net-b.de>
* trans-expr.c (gfc_copy_class_to_class,
gfc_trans_arrayfunc_assign): Free loop and ss data.
* trans-intrinsic.c (gfc_trans_arrayfunc_assign): Free ss data.
From-SVN: r190586
This commit is contained in:
parent
03dd17b12e
commit
d8f8a0b41e
|
|
@ -1,3 +1,9 @@
|
||||||
|
2012-08-22 Tobias Burnus <burnus@net-b.de>
|
||||||
|
|
||||||
|
* trans-expr.c (gfc_copy_class_to_class,
|
||||||
|
gfc_trans_arrayfunc_assign): Free loop and ss data.
|
||||||
|
* trans-intrinsic.c (gfc_trans_arrayfunc_assign): Free ss data.
|
||||||
|
|
||||||
2012-08-21 Tobias Burnus <burnus@net-b.de>
|
2012-08-21 Tobias Burnus <burnus@net-b.de>
|
||||||
|
|
||||||
* parse.c (parse_contained): Include EXEC_END_PROCEDURE
|
* parse.c (parse_contained): Include EXEC_END_PROCEDURE
|
||||||
|
|
|
||||||
|
|
@ -533,6 +533,7 @@ gfc_copy_class_to_class (tree from, tree to, tree nelems)
|
||||||
loop.to[0] = nelems;
|
loop.to[0] = nelems;
|
||||||
gfc_trans_scalarizing_loops (&loop, &loopbody);
|
gfc_trans_scalarizing_loops (&loop, &loopbody);
|
||||||
gfc_add_block_to_block (&body, &loop.pre);
|
gfc_add_block_to_block (&body, &loop.pre);
|
||||||
|
gfc_cleanup_loop (&loop);
|
||||||
tmp = gfc_finish_block (&body);
|
tmp = gfc_finish_block (&body);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
@ -6770,6 +6771,7 @@ gfc_trans_arrayfunc_assign (gfc_expr * expr1, gfc_expr * expr2)
|
||||||
if (!expr2->value.function.isym)
|
if (!expr2->value.function.isym)
|
||||||
{
|
{
|
||||||
realloc_lhs_loop_for_fcn_call (&se, &expr1->where, &ss, &loop);
|
realloc_lhs_loop_for_fcn_call (&se, &expr1->where, &ss, &loop);
|
||||||
|
gfc_cleanup_loop (&loop);
|
||||||
ss->is_alloc_lhs = 1;
|
ss->is_alloc_lhs = 1;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
@ -6778,6 +6780,7 @@ gfc_trans_arrayfunc_assign (gfc_expr * expr1, gfc_expr * expr2)
|
||||||
|
|
||||||
gfc_conv_function_expr (&se, expr2);
|
gfc_conv_function_expr (&se, expr2);
|
||||||
gfc_add_block_to_block (&se.pre, &se.post);
|
gfc_add_block_to_block (&se.pre, &se.post);
|
||||||
|
gfc_free_ss (se.ss);
|
||||||
|
|
||||||
return gfc_finish_block (&se.pre);
|
return gfc_finish_block (&se.pre);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1328,6 +1328,7 @@ gfc_conv_intrinsic_rank (gfc_se *se, gfc_expr *expr)
|
||||||
argse.descriptor_only = 1;
|
argse.descriptor_only = 1;
|
||||||
|
|
||||||
gfc_conv_expr_descriptor (&argse, expr->value.function.actual->expr, ss);
|
gfc_conv_expr_descriptor (&argse, expr->value.function.actual->expr, ss);
|
||||||
|
gfc_free_ss (ss);
|
||||||
gfc_add_block_to_block (&se->pre, &argse.pre);
|
gfc_add_block_to_block (&se->pre, &argse.pre);
|
||||||
gfc_add_block_to_block (&se->post, &argse.post);
|
gfc_add_block_to_block (&se->post, &argse.post);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue