Viewing Fortran 90 Pointer Types
A Fortran 90 pointer type lets you point to scalar or array types.
TotalView implicitly handles slicing operations that set up a pointer or assumed shape subroutine argument so that indices and values it displays in a Variable Window are the same as in the Fortran code; for example:
integer, dimension(10), target :: ia
integer, dimension(:), pointer :: ip
do i = 1,10
ia(i) = i
end do
ip => ia(10:1:-2)
After diving through the
ip pointer, TotalView displays the windows shown in
Figure 155:
The address displayed is not that of the array’s base. Since the array’s stride is negative, array elements that follow are at lower absolute addresses. Consequently, the address displayed is that of the array element that has the lowest index. This might not be the first displayed element if you used a slice to display the array with reversed indices.