diff options
author | Janus Weil <janus@gcc.gnu.org> | 2010-06-29 21:06:07 +0200 |
---|---|---|
committer | Janus Weil <janus@gcc.gnu.org> | 2010-06-29 21:06:07 +0200 |
commit | 0e3b941e0cd49395c8a0de9047a868a42327b51e (patch) | |
tree | 2deec3e2cf0eaea557f447a67c222a34e4ff7779 /gcc/fortran | |
parent | 528b7aa42d97f794318ac9943973605d601a410c (diff) | |
download | gcc-0e3b941e0cd49395c8a0de9047a868a42327b51e.tar.gz |
re PR fortran/44696 ([OOP] ASSOCIATED fails on polymorphic variables)
2010-06-29 Janus Weil <janus@gcc.gnu.org>
PR fortran/44696
* trans-intrinsic.c (gfc_conv_associated): Handle polymorphic variables
passed as second argument of ASSOCIATED.
2010-06-29 Janus Weil <janus@gcc.gnu.org>
PR fortran/44696
* gfortran.dg/associated_target_4.f90: New.
From-SVN: r161554
Diffstat (limited to 'gcc/fortran')
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/trans-intrinsic.c | 2 |
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 34c8f6407b5..a838747821b 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2010-06-29 Janus Weil <janus@gcc.gnu.org> + + PR fortran/44696 + * trans-intrinsic.c (gfc_conv_associated): Handle polymorphic variables + passed as second argument of ASSOCIATED. + 2010-06-29 Paul Thomas <pault@gcc.gnu.org> PR fortran/44582 diff --git a/gcc/fortran/trans-intrinsic.c b/gcc/fortran/trans-intrinsic.c index 9f63ebfb3db..06fd538d775 100644 --- a/gcc/fortran/trans-intrinsic.c +++ b/gcc/fortran/trans-intrinsic.c @@ -4416,6 +4416,8 @@ gfc_conv_associated (gfc_se *se, gfc_expr *expr) else { /* An optional target. */ + if (arg2->expr->ts.type == BT_CLASS) + gfc_add_component_ref (arg2->expr, "$data"); ss2 = gfc_walk_expr (arg2->expr); nonzero_charlen = NULL_TREE; |