Pointers to describe (staggered grid) topologies

I can’t see how a BLOCK construct can “dealias” an object…

Regarding the ASSOCIATE construct, in 11.1.3.3 one can read:

Within an ASSOCIATE […] construct, […]. The associating entity does not have the ALLOCATABLE or POINTER attributes; it has the TARGET attribute if and only if the selector is a variable and has either the TARGET or POINTER attribute.

In other words:

real, pointer :: x(:)
...
ASSOCIATE( y => x )
   ! y has implicitely the TARGET attribute here, and is therefore
   ! considered as potentially aliased by the compiler
END ASSOCIATE
1 Like