This is an elementary question that has been bugging me since sometime. If I pass an array section to a subroutine that declares the corresponding dummy array explicitly would there be a physical copy of the object (assuming the interface of the callee is available to the caller)? Is there an advantage of passing a pointer instead (I am new to Fortran pointers)?