re PR fortran/47768 (ICE: printing a derived-type variable with proc-pointer components)
2011-02-18 Janus Weil <janus@gcc.gnu.org> PR fortran/47768 * resolve.c (resolve_transfer): Reject variables with procedure pointer components. 2011-02-18 Janus Weil <janus@gcc.gnu.org> PR fortran/47768 * gfortran.dg/proc_ptr_comp_30.f90: New. From-SVN: r170271
This commit is contained in:
parent
abfea58d53
commit
357f98e552
|
@ -1,3 +1,9 @@
|
|||
2011-02-18 Janus Weil <janus@gcc.gnu.org>
|
||||
|
||||
PR fortran/47768
|
||||
* resolve.c (resolve_transfer): Reject variables with procedure pointer
|
||||
components.
|
||||
|
||||
2011-02-18 Janus Weil <janus@gcc.gnu.org>
|
||||
|
||||
PR fortran/47767
|
||||
|
|
|
@ -8091,6 +8091,14 @@ resolve_transfer (gfc_code *code)
|
|||
return;
|
||||
}
|
||||
|
||||
/* F08:C935. */
|
||||
if (ts->u.derived->attr.proc_pointer_comp)
|
||||
{
|
||||
gfc_error ("Data transfer element at %L cannot have "
|
||||
"procedure pointer components", &code->loc);
|
||||
return;
|
||||
}
|
||||
|
||||
if (ts->u.derived->attr.alloc_comp)
|
||||
{
|
||||
gfc_error ("Data transfer element at %L cannot have "
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2011-02-18 Janus Weil <janus@gcc.gnu.org>
|
||||
|
||||
PR fortran/47768
|
||||
* gfortran.dg/proc_ptr_comp_30.f90: New.
|
||||
|
||||
2011-02-18 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR debug/47780
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
! { dg-do compile }
|
||||
!
|
||||
! PR 47768: ICE: printing a derived-type variable with proc-pointer components
|
||||
!
|
||||
! Contributed by Janus Weil <janus@gcc.gnu.org>
|
||||
|
||||
type :: t
|
||||
integer :: i = 3
|
||||
procedure(type(t)), pointer, nopass :: ppc
|
||||
end type
|
||||
|
||||
type(t) :: x
|
||||
|
||||
print *,x ! { dg-error "cannot have procedure pointer components" }
|
||||
end
|
Loading…
Reference in New Issue