1program main 2 call test (reshape ((/ 'a', 'b', 'c', 'd' /), (/ 2, 2 /))) 3contains 4 subroutine test (a) 5 character (len = *), dimension (:, :) :: a 6 7 if (size (a, 1) .ne. 2) call abort 8 if (size (a, 2) .ne. 2) call abort 9 if (len (a) .ne. 1) call abort 10 11 if (a (1, 1) .ne. 'a') call abort 12 if (a (2, 1) .ne. 'b') call abort 13 if (a (1, 2) .ne. 'c') call abort 14 if (a (2, 2) .ne. 'd') call abort 15 end subroutine test 16end program main 17