Почему спецификация Fortran 90 указывает (5.2.8), что ключевое слово TARGET должно использоваться для связывания с ним POINTER? Почему не каждый тип действителен TARGET?
Например,
INTEGER, POINTER :: px
INTEGER, TARGET :: x
x = 5
px => x
является действительным синтаксисом, но
INTEGER, POINTER :: px
INTEGER :: x
x = 5
px => x
недействителен.
Почему это должно быть?