aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/resolve.c
diff options
context:
space:
mode:
authorJanus Weil <janus@gcc.gnu.org>2017-11-11 22:54:41 +0100
committerJanus Weil <janus@gcc.gnu.org>2017-11-11 22:54:41 +0100
commit859e3093a4c9248144be55391d4f37ba42533cd2 (patch)
treede5b9e49db3393a0b234550438eddfd3f4b3039a /gcc/fortran/resolve.c
parent6aab06c7450d1306b3ccf2aeb82882857df6446c (diff)
downloadgcc-859e3093a4c9248144be55391d4f37ba42533cd2.zip
gcc-859e3093a4c9248144be55391d4f37ba42533cd2.tar.gz
gcc-859e3093a4c9248144be55391d4f37ba42533cd2.tar.bz2
re PR fortran/82932 ([OOP] ICE in update_compcall_arglist, at fortran/resolve.c:5837)
2017-11-11 Janus Weil <janus@gcc.gnu.org> PR fortran/82932 * resolve.c (update_compcall_arglist): Improve error recovery, remove a gcc_assert. 2017-11-11 Janus Weil <janus@gcc.gnu.org> PR fortran/82932 * gfortran.dg/typebound_call_29.f90: New test. From-SVN: r254660
Diffstat (limited to 'gcc/fortran/resolve.c')
-rw-r--r--gcc/fortran/resolve.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c
index 1dde0d3..28a0c9e 100644
--- a/gcc/fortran/resolve.c
+++ b/gcc/fortran/resolve.c
@@ -5834,7 +5834,9 @@ update_compcall_arglist (gfc_expr* e)
return true;
}
- gcc_assert (tbp->pass_arg_num > 0);
+ if (tbp->pass_arg_num <= 0)
+ return false;
+
e->value.compcall.actual = update_arglist_pass (e->value.compcall.actual, po,
tbp->pass_arg_num,
tbp->pass_arg);