aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/interface.c
diff options
context:
space:
mode:
authorSteven G. Kargl <kargl@gcc.gnu.org>2016-10-24 19:21:42 +0000
committerSteven G. Kargl <kargl@gcc.gnu.org>2016-10-24 19:21:42 +0000
commitc708217135607d42ff3926164f0472ef6aa66719 (patch)
treebaeb490399f923d9e48e32eb7362056a58a73628 /gcc/fortran/interface.c
parent0f2a9e37fa5487d7f1b4ea3530c497661a6d7817 (diff)
downloadgcc-c708217135607d42ff3926164f0472ef6aa66719.zip
gcc-c708217135607d42ff3926164f0472ef6aa66719.tar.gz
gcc-c708217135607d42ff3926164f0472ef6aa66719.tar.bz2
re PR fortran/71895 (ICE in gfc_compare_derived_types, at fortran/interface.c:520)
2016-10-24 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/71895 * interface.c (gfc_compare_derived_types): Convert gcc_assert() to a gfc_internal_error() to prevent an ICE. 2016-10-24 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/71895 * gfortran.dg/pr71895.f90: New test. From-SVN: r241493
Diffstat (limited to 'gcc/fortran/interface.c')
-rw-r--r--gcc/fortran/interface.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/fortran/interface.c b/gcc/fortran/interface.c
index dc81ab5..b851d5a 100644
--- a/gcc/fortran/interface.c
+++ b/gcc/fortran/interface.c
@@ -615,7 +615,8 @@ gfc_compare_derived_types (gfc_symbol *derived1, gfc_symbol *derived2)
if (derived1 == derived2)
return 1;
- gcc_assert (derived1 && derived2);
+ if (!derived1 || !derived2)
+ gfc_internal_error ("gfc_compare_derived_types: invalid derived type");
/* Compare UNION types specially. */
if (derived1->attr.flavor == FL_UNION || derived2->attr.flavor == FL_UNION)