1! { dg-do run } 2! 3! PR 41106: [F03] Procedure Pointers with CHARACTER results 4! 5! Contributed by Janus Weil <janus@gcc.gnu.org> 6 7module m 8 type :: t 9 procedure(abc), pointer, nopass :: ptr 10 end type 11contains 12 function abc(i) 13 integer :: i 14 character(len=i) :: abc 15 abc = 'abcde' 16 end function abc 17end module m 18 19use m 20 type(t) :: x 21 character(len=4) :: str 22 x%ptr => abc 23 print *,x%ptr(4) 24 if (x%ptr(4)/='abcd') call abort 25 str = x%ptr(3) 26 if (str/='abc') call abort() 27end 28