From 7df938d62ab7686c9fcd83f8821b7fec88e411c9 Mon Sep 17 00:00:00 2001 From: Tobias Burnus Date: Mon, 24 Sep 2012 21:05:18 +0200 Subject: [PATCH] re PR fortran/54618 ([OOP] wrong-code with CLASS(...), INTENT(OUT) -- and OPTIONAL or ALLOCATABLE) 2012-09-24 Tobias Burnus PR fortran/54618 * trans-expr.c (gfc_conv_procedure_call): Fix INTENT(OUT) handling for allocatable BT_CLASS. From-SVN: r191676 --- gcc/fortran/ChangeLog | 6 ++++++ gcc/fortran/trans-expr.c | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index d6bfcf9e8d3..23b3b177325 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2012-09-24 Tobias Burnus + + PR fortran/54618 + * trans-expr.c (gfc_conv_procedure_call): Fix INTENT(OUT) + handling for allocatable BT_CLASS. + 2012-09-24 Lawrence Crowl * trans-expr.c (gfc_conv_cst_int_power): Change to new double_int API. diff --git a/gcc/fortran/trans-expr.c b/gcc/fortran/trans-expr.c index 319c36175aa..1178e3d3cb5 100644 --- a/gcc/fortran/trans-expr.c +++ b/gcc/fortran/trans-expr.c @@ -3918,7 +3918,7 @@ gfc_conv_procedure_call (gfc_se * se, gfc_symbol * sym, if (fsym && fsym->attr.intent == INTENT_OUT && (fsym->attr.allocatable || (fsym->ts.type == BT_CLASS - && CLASS_DATA (e)->attr.allocatable))) + && CLASS_DATA (fsym)->attr.allocatable))) { stmtblock_t block; tree ptr; -- 2.30.2