* trans-decl.c (create_function_arglist): Set DECL_BY_REFERENCE on
PARM_DECLs with pointer or reference type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@139777
138bc75d-0d04-0410-961f-
82ee72b054a4
2008-08-29 Jakub Jelinek <jakub@redhat.com>
+ PR fortran/24790
+ * trans-decl.c (create_function_arglist): Set DECL_BY_REFERENCE on
+ PARM_DECLs with pointer or reference type.
+
* trans-decl.c (gfc_build_qualified_array): Build non-flat
array type for debug info purposes.
DECL_ARG_TYPE (parm) = TREE_VALUE (typelist);
/* All implementation args are read-only. */
TREE_READONLY (parm) = 1;
+ if (POINTER_TYPE_P (type)
+ && (!f->sym->attr.proc_pointer
+ && f->sym->attr.flavor != FL_PROCEDURE))
+ DECL_BY_REFERENCE (parm) = 1;
gfc_finish_decl (parm);