! Test transpose for character arrays.
! { dg-do run }
program main
  implicit none
  integer, parameter :: n1 = 3, n2 = 4, slen = 9
  character (len = slen), dimension (n1, n2) :: a
  integer :: i1, i2

  do i2 = 1, n2
    do i1 = 1, n1
      a (i1, i2) = 'ab'(i1:i1) // 'cde'(i2:i2) // 'cantrip'
    end do
  end do

  call test (transpose (a))
contains
  subroutine test (b)
    character (len = slen), dimension (:, :) :: b

    if (size (b, 1) .ne. n2) call abort
    if (size (b, 2) .ne. n1) call abort

    do i2 = 1, n2
      do i1 = 1, n1
        if (b (i2, i1) .ne. a (i1, i2)) call abort
      end do
    end do
  end subroutine test
end program main
