title: Fortran arrays and subroutines (sub arrays)
body: <p>I'm going through a Fortran code, and one bit has me a little puzzled.  </p>
  
  <p>There is a subroutine, say</p>
  
  <pre><code>SUBROUTINE SSUB(X,...)
  REAL*8 X(0:N1,1:N2,0:N3-1),...
  ...
  RETURN 
  END
  </code></pre>
  
  <p>Which is called in another subroutine by:</p>
  
  <pre><code>CALL SSUB(W(0,1,0,1),...)
  </code></pre>
  
  <p>where W is a 'working array'. It appears that a specific value from W is passed to the X, however, X is dimensioned as an array.  What's going on?</p>