diff options
author | Tobias Burnus <burnus@net-b.de> | 2012-09-24 21:05:18 +0200 |
---|---|---|
committer | Tobias Burnus <burnus@gcc.gnu.org> | 2012-09-24 21:05:18 +0200 |
commit | 7df938d62ab7686c9fcd83f8821b7fec88e411c9 (patch) | |
tree | 3b60dcfb278d029367e96800cde4334dd9ee7603 /gcc | |
parent | 9be0ac8c9e638bc1b52b83d34a98e8176af645e1 (diff) | |
download | gcc-7df938d62ab7686c9fcd83f8821b7fec88e411c9.zip gcc-7df938d62ab7686c9fcd83f8821b7fec88e411c9.tar.gz gcc-7df938d62ab7686c9fcd83f8821b7fec88e411c9.tar.bz2 |
re PR fortran/54618 ([OOP] wrong-code with CLASS(...), INTENT(OUT) -- and OPTIONAL or ALLOCATABLE)
2012-09-24 Tobias Burnus <burnus@net-b.de>
PR fortran/54618
* trans-expr.c (gfc_conv_procedure_call): Fix INTENT(OUT)
handling for allocatable BT_CLASS.
From-SVN: r191676
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/trans-expr.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index d6bfcf9..23b3b17 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2012-09-24 Tobias Burnus <burnus@net-b.de> + + PR fortran/54618 + * trans-expr.c (gfc_conv_procedure_call): Fix INTENT(OUT) + handling for allocatable BT_CLASS. + 2012-09-24 Lawrence Crowl <crowl@google.com> * 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 319c361..1178e3d 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; |