1! { dg-do run } 2! PR40847 - an error in gfc_resolve_transfer caused the character length 3! of 'mold' to be set incorrectly. 4! 5! Contributed by Joost VandeVondele <jv244@cam.ac.uk> 6! 7program test_elemental 8 9if (any (transfer_size((/0.,0./),(/'a','b'/)) .ne. [4 ,4])) call abort 10 11contains 12 13 elemental function transfer_size (source, mold) 14 real, intent(in) :: source 15 character(*), intent(in) :: mold 16 integer :: transfer_size 17 transfer_size = SIZE(TRANSFER(source, (/mold/))) 18 return 19 end function transfer_size 20 21end program test_elemental 22