1! { dg-do run } 2! PR35937, in which letting the length of 'c' to kind = 8 would 3! screw up the interface and would cause an ICE. Note that this is 4! actually the example of comment #4. 5! 6! Contributed by Thomas Koenig <tkoenig@gcc.gnu.org> 7! 8program main 9 implicit none 10 if (f5 ('1') .ne. "a") STOP 1 11 if (len (f5 ('1')) .ne. 1) STOP 1 12 if (f5 ('4') .ne. "abcd") STOP 1 13 if (len (f5 ('4')) .ne. 4) STOP 1 14contains 15 function f5 (c) 16 character(len=1_8) :: c 17 character(len=scan('123456789', c)) :: f5 18 integer :: i 19 do i = 1, len (f5) 20 f5(i:i) = char (i+96) 21 end do 22 end function f5 23end program main 24