title: Array inside type array as function argument
body: <p>I have the following program at hand</p>
  
  <pre><code>program foo
    type bar
      real, dimension(2) :: vector
    end type
    type(bar), dimension(3) :: bararray
    call doSomething(bararray%vector)
  end program
  
  subroutine doSomething(v)
    real, dimension(3,2), intent(inout) :: v
    ...
  end subroutine
  </code></pre>
  
  <p>Now this gives me a compilation error.</p>
  
  <pre><code>Error: Two or more part references with nonzero rank must not be specified at (1)
  </code></pre>
  
  <p>If I change the call to</p>
  
  <pre><code>call doSomething((/bararray%vector(1), bararray%vector(2)/))
  </code></pre>
  
  <p>everything works out nicely. The thing is that this just seems a bit cumbersome, so the question is, is there any other way to write the argument for the subroutine?</p>
  
  <p>Thanks in advance.</p>