aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/resolve.c
diff options
context:
space:
mode:
authorSteven G. Kargl <kargl@gcc.gnu.org>2019-06-19 17:58:54 +0000
committerSteven G. Kargl <kargl@gcc.gnu.org>2019-06-19 17:58:54 +0000
commitee3aab6826f7dbfe0f1a509cb429f4a4d755f38b (patch)
treed487aab5b7ba40c4f3349db9718045ab30c1b4dd /gcc/fortran/resolve.c
parent33f0ad50f48cefeec7f3136e30229c9f85bbd372 (diff)
downloadgcc-ee3aab6826f7dbfe0f1a509cb429f4a4d755f38b.zip
gcc-ee3aab6826f7dbfe0f1a509cb429f4a4d755f38b.tar.gz
gcc-ee3aab6826f7dbfe0f1a509cb429f4a4d755f38b.tar.bz2
re PR fortran/87907 (ICE in resolve_contained_fntype, at fortran/resolve.c:587)
2019-06-19 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/87907 * resolve.c (resolve_contained_fntype): Do not dereference a NULL pointer. 2019-06-19 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/87907 * gfortran.dg/pr87907.f90: New testcase. From-SVN: r272480
Diffstat (limited to 'gcc/fortran/resolve.c')
-rw-r--r--gcc/fortran/resolve.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c
index c565325..afa4e5c 100644
--- a/gcc/fortran/resolve.c
+++ b/gcc/fortran/resolve.c
@@ -583,6 +583,9 @@ resolve_contained_fntype (gfc_symbol *sym, gfc_namespace *ns)
|| sym->attr.entry_master)
return;
+ if (!sym->result)
+ return;
+
/* Try to find out of what the return type is. */
if (sym->result->ts.type == BT_UNKNOWN && sym->result->ts.interface == NULL)
{