aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/trans-expr.c
diff options
context:
space:
mode:
authorTobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>2004-09-24 19:06:57 +0200
committerTobias Schlüter <tobi@gcc.gnu.org>2004-09-24 19:06:57 +0200
commitc0c07d7b821d9010b77358135290aeaa24c48c6c (patch)
tree2eee2290b7705d66291606d5ace45c22add16a84 /gcc/fortran/trans-expr.c
parent3d15015ded873efdf126063d669d48a26b7460bd (diff)
downloadgcc-c0c07d7b821d9010b77358135290aeaa24c48c6c.zip
gcc-c0c07d7b821d9010b77358135290aeaa24c48c6c.tar.gz
gcc-c0c07d7b821d9010b77358135290aeaa24c48c6c.tar.bz2
re PR fortran/17615 (Internal compiler error using interface procedures)
fortran/ PR fortran/17615 * trans-expr.c (gfc_trans_arrayfunc_assign): Look at resolved function to determine return type. testsuite/ PR fortran/17615 * gfortran.dg/pr17615.f90: New test. From-SVN: r88061
Diffstat (limited to 'gcc/fortran/trans-expr.c')
-rw-r--r--gcc/fortran/trans-expr.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/fortran/trans-expr.c b/gcc/fortran/trans-expr.c
index 29550b7..fc5b41b 100644
--- a/gcc/fortran/trans-expr.c
+++ b/gcc/fortran/trans-expr.c
@@ -2007,8 +2007,8 @@ gfc_trans_arrayfunc_assign (gfc_expr * expr1, gfc_expr * expr2)
/* The frontend doesn't seem to bother filling in expr->symtree for intrinsic
functions. */
gcc_assert (expr2->value.function.isym
- || (gfc_return_by_reference (expr2->symtree->n.sym)
- && expr2->symtree->n.sym->result->attr.dimension));
+ || (gfc_return_by_reference (expr2->value.function.esym)
+ && expr2->value.function.esym->result->attr.dimension));
ss = gfc_walk_expr (expr1);
gcc_assert (ss != gfc_ss_terminator);