re PR fortran/46201 ([F03] ICE on procedure pointer component call)

2010-12-13  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/46201
	* trans-expr.c (gfc_conv_procedure_call): Handle procedure pointer
	components called on a dimensionful base object.

2010-12-13  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/46201
	* gfortran.dg/proc_ptr_comp_27.f90: New.

From-SVN: r167767
This commit is contained in:
Janus Weil 2010-12-13 20:17:46 +01:00
parent b767da733d
commit c58bb30d66
4 changed files with 24 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2010-12-13 Janus Weil <janus@gcc.gnu.org>
PR fortran/46201
* trans-expr.c (gfc_conv_procedure_call): Handle procedure pointer
components called on a dimensionful base object.
2010-12-13 Janus Weil <janus@gcc.gnu.org>
PR fortran/46841

View File

@ -3594,7 +3594,7 @@ gfc_conv_procedure_call (gfc_se * se, gfc_symbol * sym,
if (!se->direct_byref)
{
if (sym->attr.dimension || (comp && comp->attr.dimension))
if ((sym->attr.dimension && !comp) || (comp && comp->attr.dimension))
{
if (gfc_option.rtcheck & GFC_RTCHECK_BOUNDS)
{

View File

@ -1,3 +1,8 @@
2010-12-13 Janus Weil <janus@gcc.gnu.org>
PR fortran/46201
* gfortran.dg/proc_ptr_comp_27.f90: New.
2010-12-13 Jakub Jelinek <jakub@redhat.com>
PR debug/46867

View File

@ -0,0 +1,12 @@
! { dg-do compile }
!
! PR 46201: [F03] ICE on procedure pointer component call
!
! Contributed by Stephen J. Bespalko <sjbespa@comcast.net>
type t
procedure(character), nopass, pointer :: ppc
end type
type(t),dimension(1) :: v
print *,v(1)%ppc()
end