2006-09-13 Wolfgang Gellerich <gellerich@de.ibm.com>
* trans-expr.c (gfc_add_interface_mapping): For characters, dereference
pointer if necessary and then perform the cast.
From-SVN: r116921
+2006-09-13 Wolfgang Gellerich <gellerich@de.ibm.com>
+
+ * trans-expr.c (gfc_add_interface_mapping): For characters, dereference
+ pointer if necessary and then perform the cast.
+
2006-09-11 Steven G. Kargl <kargl@gcc.gnu.org>
* intrinsic.c: Update Copyright date.
tmp = gfc_get_character_type_len (sym->ts.kind, NULL);
tmp = build_pointer_type (tmp);
if (sym->attr.pointer)
- tmp = build_pointer_type (tmp);
-
- value = fold_convert (tmp, se->expr);
- if (sym->attr.pointer)
- value = build_fold_indirect_ref (value);
+ value = build_fold_indirect_ref (se->expr);
+ else
+ value = se->expr;
+ value = fold_convert (tmp, value);
}
/* If the argument is a scalar, a pointer to an array or an allocatable,