Commit c0e8f02b by Steven G. Kargl

re PR fortran/85786 (Segfault in associated intrinsic)

2018-05-25  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/85786
	* gfortran.dg/pr85786.f90: New test.

From-SVN: r260783
parent d9338471
2018-05-25 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/85786
* gfortran.dg/pr85786.f90: New test.
2018-05-25 Paul Koning <ni1d@arrl.net> 2018-05-25 Paul Koning <ni1d@arrl.net>
* gcc.c-torture/compile/20151204.c: Skip if pdp11. * gcc.c-torture/compile/20151204.c: Skip if pdp11.
......
! { dg-do run }
! PR fortran/85786
program test
implicit none
type :: p2d
real, pointer :: p(:,:) => null()
end type p2d
type :: test_cs
type(p2d), pointer :: v(:) => null()
end type test_cs
type(test_cs), pointer :: cs
real, allocatable, target :: e(:,:)
allocate(cs)
if (associated(cs) .neqv. .true.) stop 1
allocate(cs%v(2))
if (associated(cs%v) .neqv. .true.) stop 2
allocate(e(2,2))
e = 42
if (query_ptr(e, cs) .neqv. .true.) stop 3
contains
logical function query_ptr(f_ptr, cs)
real, target, intent(in) :: f_ptr(:,:)
type(test_cs), pointer, intent(inout) :: cs
if (associated(cs)) then
if (associated(cs%v) .neqv. .true.) stop 4
cs%v(2)%p => f_ptr
if (associated(cs%v(2)%p) .neqv. .true.) stop 5
query_ptr = associated(cs%v(2)%p, f_ptr)
else
query_ptr = .false.
end if
end function query_ptr
end program test
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment