PROGRAM DimmAss IMPLICIT NONE INTERFACE SUBROUTINE sub(a,b,c) REAL, DIMENSION(:,:), INTENT(IN) :: a, b REAL, DIMENSION(0:,2:), INTENT(INOUT) :: c END SUBROUTINE sub END INTERFACE REAL, DIMENSION(0:9,10) :: r CALL sub(r,r(0:4,2:6),r(0:4,2:6)) END PROGRAM DimmAss SUBROUTINE sub(a,b,c) REAL, DIMENSION(:,:), INTENT(IN) :: a, b REAL, DIMENSION(0:,2:), INTENT(INOUT) :: c WRITE(*,*) 'Bounds and size of a: ', & & LBOUND(a), UBOUND(a), SIZE(a) WRITE(*,*) 'Bounds and size of b: ', & & LBOUND(b), UBOUND(b), SIZE(b) WRITE(*,*) 'Bounds and size of c: ', & & LBOUND(c), UBOUND(c), SIZE(c) END SUBROUTINE sub