Message ID | 5C92BC90.4070104@gmx.de |
---|---|
State | New |
Headers | show |
Series | [fortran] PR83515, PR85797 - ICE in gfc_element_size | expand |
Ping!? On 03/20/19 23:20, Harald Anlauf wrote: > The PRs originated in gfc_element_size lacking a treatment of > procedure pointers, which has been added. The testcase is currently > a pure compile test. When a reduced run-time test for PR83515 > becomes available, it will be added to the testsuite. > > Regtested on x86_64-pc-linux-gnu. > > OK for trunk? > > Thanks, > Harald > > 2019-03-20 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. > > 2019-03-20 Harald Anlauf <anlauf@gmx.de> > > PR fortran/83515 > PR fortran/85797 > * gfortran.dg/pr85797.f90: New test. >
Committed to trunk as svn rev. 270045. Since the patch is considered safe, I also committed to open branches (7/8). Thanks for the review! Harald On 03/20/19 23:20, Harald Anlauf wrote: > The PRs originated in gfc_element_size lacking a treatment of > procedure pointers, which has been added. The testcase is currently > a pure compile test. When a reduced run-time test for PR83515 > becomes available, it will be added to the testsuite. > > Regtested on x86_64-pc-linux-gnu. > > OK for trunk? > > Thanks, > Harald > > 2019-03-20 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. > > 2019-03-20 Harald Anlauf <anlauf@gmx.de> > > PR fortran/83515 > PR fortran/85797 > * gfortran.dg/pr85797.f90: New test. >
Index: gcc/fortran/target-memory.c =================================================================== --- gcc/fortran/target-memory.c (revision 269826) +++ gcc/fortran/target-memory.c (working copy) @@ -120,6 +120,7 @@ case BT_CLASS: case BT_VOID: case BT_ASSUMED: + case BT_PROCEDURE: { /* Determine type size without clobbering the typespec for ISO C binding types. */ Index: gcc/fortran/trans-types.c =================================================================== --- gcc/fortran/trans-types.c (revision 269826) +++ gcc/fortran/trans-types.c (working copy) @@ -1194,6 +1194,9 @@ basetype = pfunc_type_node; } break; + case BT_PROCEDURE: + basetype = pfunc_type_node; + break; default: gcc_unreachable (); }