Please ignore the following part of my patch - its unrelated. (It's for/from http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46328#c11)

Tobias

Index: gcc/fortran/resolve.c
===================================================================
--- gcc/fortran/resolve.c       (Revision 182995)
+++ gcc/fortran/resolve.c       (Arbeitskopie)
@@ -5683,8 +5683,10 @@ get_declared_from_expr (gfc_ref **class_ref, gfc_r
-  if (declared == NULL)
+  if (declared == NULL&&  e->expr_type == EXPR_VARIABLE)
      declared = e->symtree->n.sym->ts.u.derived;
+  else
+    declared = e->ts.u.derived;

Reply via email to