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(arg) 13 character(len=5),pointer :: abc 14 character(len=5),target :: arg 15 abc => arg 16 end function abc 17end module m 18 19use m 20 type(t) :: x 21 character(len=5) :: str = 'abcde' 22 character(len=5), pointer :: strptr 23 x%ptr => abc 24 print *,x%ptr(str) 25 strptr => x%ptr(str) 26 if (strptr/='abcde') STOP 1 27 str = 'fghij' 28 if (strptr/='fghij') STOP 2 29end 30