Multidimensional arrays are first-class in Fortran, so there's no need to use pointers there. There are some rules around pointers and subarrays that I expect make any possible aliasing undefined behaviour.
It has things called pointers, but they are significantly different than pointers in C. They can't return memory addresses and so there's no pointer arithmetic or other difficult to optimize actions.
And after writing a significant amount of fortran 90 code I didn't even know the feature existed...