aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/resolve.c
diff options
context:
space:
mode:
authorAndre Vehreschild <vehre@gcc.gnu.org>2016-12-13 17:47:48 +0100
committerAndre Vehreschild <vehre@gcc.gnu.org>2016-12-13 17:47:48 +0100
commit6479f45b31c13f30f1de2ac4ff8d7a0e0084b864 (patch)
treec790303060ae2a715c0ef52807f3705bb2b57d25 /gcc/fortran/resolve.c
parentb37a5b979a275375322787973b7d6fb620a71ccf (diff)
downloadgcc-6479f45b31c13f30f1de2ac4ff8d7a0e0084b864.zip
gcc-6479f45b31c13f30f1de2ac4ff8d7a0e0084b864.tar.gz
gcc-6479f45b31c13f30f1de2ac4ff8d7a0e0084b864.tar.bz2
re PR fortran/77785 ([Coarray] ICE in gfc_get_caf_token_offset, at fortran/trans-expr.c:1990)
gcc/fortran/ChangeLog: 2016-12-13 Andre Vehreschild <vehre@gcc.gnu.org> PR fortran/77785 * resolve.c (resolve_symbol): Correct attr lookup to the _data component. * trans-array.c (gfc_alloc_allocatable_for_assignment): Indirect ref pointers and references before retrieving the caf-token. gcc/testsuite/ChangeLog: 2016-12-13 Andre Vehreschild <vehre@gcc.gnu.org> PR fortran/77785 * gfortran.dg/coarray_38.f90: Added expecting error message. * gfortran.dg/coarray_41.f90: New test. * gfortran.dg/coarray_class_2.f90: New test. From-SVN: r243614
Diffstat (limited to 'gcc/fortran/resolve.c')
-rw-r--r--gcc/fortran/resolve.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c
index ece4d75..ce1d9ea 100644
--- a/gcc/fortran/resolve.c
+++ b/gcc/fortran/resolve.c
@@ -14044,8 +14044,8 @@ resolve_symbol (gfc_symbol *sym)
if (flag_coarray == GFC_FCOARRAY_LIB && sym->ts.type == BT_CLASS
&& sym->ts.u.derived && CLASS_DATA (sym)
&& CLASS_DATA (sym)->attr.codimension
- && (sym->ts.u.derived->attr.alloc_comp
- || sym->ts.u.derived->attr.pointer_comp))
+ && (CLASS_DATA (sym)->ts.u.derived->attr.alloc_comp
+ || CLASS_DATA (sym)->ts.u.derived->attr.pointer_comp))
{
gfc_error ("Sorry, allocatable/pointer components in polymorphic (CLASS) "
"type coarrays at %L are unsupported", &sym->declared_at);