Hello,
I am facing an issue with Intel 16.0.3.210.
The issue is that when we want to have 1D pointer to a 3D array that is contained into a type, the compiler is reporting that the data target must be simply contiguous or of rank one.
However, when the array is not contain into a type, it does work. The issue is also not present in Intel 15.x or 14.x series.
Any ideas ?
Thank you
program test implicit none type :: t_con real, allocatable :: array(:,:,:) end type integer, parameter :: N=30 real, allocatable, target :: a(:,:,:) real, pointer :: p(:) real, pointer :: p1(:) type(t_con), target :: t_a allocate(a(N,N,N)) allocate(t_a%array(N,N,N)) a=0.0 t_a%array = 0.0 p(1:30) => a(:,:,3) p(2) = 500.0 print *, p(2), a(2,1,3) p1(1:30) => t_a%array(:,:,3) p1(2) = 200.0 print *, p1(2), t_a%array(2,1,3) nullify(p) deallocate(a) deallocate(t_a%array) end program test
Thread Topic:
Question