aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/trans-types.c
diff options
context:
space:
mode:
authorHarald Anlauf <anlauf@gmx.de>2019-03-31 18:33:51 +0000
committerHarald Anlauf <anlauf@gcc.gnu.org>2019-03-31 18:33:51 +0000
commit93755deb5c26a82106aa63280c492f9bda0679c2 (patch)
tree2d7246fffdaddeb474c6292a315b3fe8df2a25ed /gcc/fortran/trans-types.c
parent60e8cda6740265f9af398d8518725b5b98e6e024 (diff)
downloadgcc-93755deb5c26a82106aa63280c492f9bda0679c2.zip
gcc-93755deb5c26a82106aa63280c492f9bda0679c2.tar.gz
gcc-93755deb5c26a82106aa63280c492f9bda0679c2.tar.bz2
re PR fortran/83515 (ICE: Invalid expression in gfc_element_size)
2019-03-31 Harald Anlauf <anlauf@gmx.de> PR fortran/83515 PR fortran/85797 * trans-types.c (gfc_typenode_for_spec): Handle conversion for procedure pointers. * target-memory.c (gfc_element_size): Handle size determination for procedure pointers. PR fortran/83515 PR fortran/85797 * gfortran.dg/pr85797.f90: New test. From-SVN: r270045
Diffstat (limited to 'gcc/fortran/trans-types.c')
-rw-r--r--gcc/fortran/trans-types.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/fortran/trans-types.c b/gcc/fortran/trans-types.c
index 9ae516b..22410b5 100644
--- a/gcc/fortran/trans-types.c
+++ b/gcc/fortran/trans-types.c
@@ -1194,6 +1194,9 @@ gfc_typenode_for_spec (gfc_typespec * spec, int codim)
basetype = pfunc_type_node;
}
break;
+ case BT_PROCEDURE:
+ basetype = pfunc_type_node;
+ break;
default:
gcc_unreachable ();
}