! { dg-do run }
! Verify by-value passing of character arguments w/in Fortran to a bind(c) 
! procedure.  
! PR fortran/32732
module pr32732
  use, intrinsic :: iso_c_binding, only: c_char
  implicit none
contains
  subroutine test(a) bind(c)
    character(kind=c_char), value :: a
    call test2(a)
  end subroutine test
  subroutine test2(a) bind(c)
    character(kind=c_char), value :: a
    if(a /= c_char_'a') STOP 1
    print *, 'a=',a
  end subroutine test2
end module pr32732

program main
  use pr32732
  implicit none
  call test('a')
end program main