¿Por qué el Fortran 90 Specification especifica (5.2.8) que la palabra clave TARGET se debe usar para asociar un POINTER a él? ¿Por qué no todos los tipos son un OBJETIVO válido?¿Por qué un Fortran POINTER requiere un OBJETIVO?
Por ejemplo,
INTEGER, POINTER :: px
INTEGER, TARGET :: x
x = 5
px => x
es sintaxis válida, pero
INTEGER, POINTER :: px
INTEGER :: x
x = 5
px => x
es
no válida.
¿Por qué debe ser esto?
Mi comentario anterior no era exacto. La asociación puntero/objetivo puede conducir a situaciones realmente complicadas. Recomiendo leer más si no tienes experiencia con las prácticas de asociación puntero/objetivo en Fortran. Consulte, por ejemplo, este enlace https://software.intel.com/en-us/forums/intel-fortran-compiler-for-linux-and-mac-os-x/topic/709550 –