Commit c5c1aeb2 by Tobias Burnus

trans-array.c (gfc_deallocate_scalar_with_status): Use NULL_TREE in the call to…

trans-array.c (gfc_deallocate_scalar_with_status): Use NULL_TREE in the call to gfc_deallocate_scalar_with_status.

2012-12-09  Tobias Burnus  <burnus@net-b.de>

        * trans-array.c (gfc_deallocate_scalar_with_status): Use
        NULL_TREE in the call to gfc_deallocate_scalar_with_status.
        * trans-decl.c (gfc_trans_deferred_vars): Pass symbol.
        * trans-stmt.c (gfc_trans_deallocate): Pass polymorphic
        * variable.

From-SVN: r194332
parent 2608ca66
2012-12-09 Tobias Burnus <burnus@net-b.de>
* trans-array.c (gfc_deallocate_scalar_with_status): Use
NULL_TREE in the call to gfc_deallocate_scalar_with_status.
* trans-decl.c (gfc_trans_deferred_vars): Pass symbol.
* trans-stmt.c (gfc_trans_deallocate): Pass polymorphic variable.
2012-12-09 Thomas Koenig <tkoenig@gcc.gnu.org> 2012-12-09 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/55593 PR fortran/55593
* gfortran.dg/do_check_8.f90: New test. * frontend-passes.c (doloop_code): Use resolved_sym
instead of n.sym->formal for formal argument list
to get the correct version for all generic subroutines.
2012-12-05 Tobias Burnus <burnus@net-b.de> 2012-12-05 Tobias Burnus <burnus@net-b.de>
......
...@@ -7589,7 +7589,7 @@ structure_alloc_comps (gfc_symbol * der_type, tree decl, ...@@ -7589,7 +7589,7 @@ structure_alloc_comps (gfc_symbol * der_type, tree decl,
CLASS_DATA (c)->attr.codimension); CLASS_DATA (c)->attr.codimension);
else else
{ {
tmp = gfc_deallocate_scalar_with_status (comp, NULL, true, NULL, tmp = gfc_deallocate_scalar_with_status (comp, NULL_TREE, true, NULL,
CLASS_DATA (c)->ts); CLASS_DATA (c)->ts);
gfc_add_expr_to_block (&tmpblock, tmp); gfc_add_expr_to_block (&tmpblock, tmp);
called_dealloc_with_status = true; called_dealloc_with_status = true;
......
...@@ -3780,9 +3780,10 @@ gfc_trans_deferred_vars (gfc_symbol * proc_sym, gfc_wrapped_block * block) ...@@ -3780,9 +3780,10 @@ gfc_trans_deferred_vars (gfc_symbol * proc_sym, gfc_wrapped_block * block)
NULL_TREE, true, NULL, NULL_TREE, true, NULL,
true); true);
else else
tmp = gfc_deallocate_scalar_with_status (se.expr, NULL, tmp = gfc_deallocate_scalar_with_status (se.expr, NULL_TREE,
true, NULL, true,
sym->ts); gfc_lval_expr_from_sym (sym),
sym->ts);
} }
if (sym->ts.type == BT_CLASS) if (sym->ts.type == BT_CLASS)
{ {
......
...@@ -5380,7 +5380,7 @@ gfc_trans_deallocate (gfc_code *code) ...@@ -5380,7 +5380,7 @@ gfc_trans_deallocate (gfc_code *code)
else else
{ {
tmp = gfc_deallocate_scalar_with_status (se.expr, pstat, false, tmp = gfc_deallocate_scalar_with_status (se.expr, pstat, false,
expr, expr->ts); al->expr, al->expr->ts);
gfc_add_expr_to_block (&se.pre, tmp); gfc_add_expr_to_block (&se.pre, tmp);
/* Set to zero after deallocation. */ /* Set to zero after deallocation. */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment