! { dg-do run } ! ! Test the fix for PR57019 comment 4 as part of the overall fix for PR34640. ! ! Contributed by ! type cParticle real(4) :: v(3) endtype cParticle type pCItem type(cParticle) :: Ele end type pCItem type(pCItem), target, dimension(1:1,1:1) :: pCellArray type(cParticle), pointer, dimension(:,:) :: pArray real(4), pointer, dimension(:) :: v_pointer real(4), dimension(3) :: v_real = 99. pArray => pCellArray%Ele v_pointer => pArray(1,1)%v; v_pointer = v_real !OK %%%%%%%%%%%% if (any (int (pArray(1,1)%v) .ne. 99)) STOP 1 v_real = 88 pArray(1,1)%v = v_real !SEGFAULT %%%%%%%%%%%%%%%%%%%%%%%% if (any (int (v_pointer) .ne. 88)) STOP 2 end