title: matmul with non-conforming matrices
body: <p>I expected the intrinsic matmul to fail when multiplying non-conforming matrices. In this simple example (see a simple code below), I am multiplying a 4x3 matrix by 4x4 matrix using matmul. Interestingly the intel compiler does not issue any warning or fatal error message at either the run-time or compile time. I tried '-check all' flag and it did not catch this error, either. Does anyone have any thoughts on this?</p>
  
  <p>P.S. gfortran does complain about this operation</p>
  
  <pre><code>    program main
  
         implicit none
  
         interface
  
            subroutine shouldFail(arrayInput, scalarOutput)
  
               implicit none
  
               real (8), intent(in) :: arrayInput(:,:)
               real (8), intent(out) :: scalarOutput
  
            end
         end interface
  
         real (8) :: scalarOutput, arrayInput(4, 3)
  
  
         arrayInput(:,:) = 1.0
         call shouldFail(arrayInput, scalarOutput)
  
         write(*,*) scalarOutput
  
      end program main
  
  
  
  
      !#############################################
  
      subroutine shouldFail(arrayInput, scalarOutput)
  
         implicit none
         real (8), intent(in) :: arrayInput(:,:)
         real (8), intent(out) :: scalarOutput
         real (8) :: jacobian(3, 4), derivative(4, 4)
  
         derivative(:,:) = 1.0
  
         jacobian = matmul(arrayInput, derivative)
  
         scalarOutput = jacobian(1, 2)
  
      end subroutine shouldFail  
  </code></pre>