1! the problem here was that we had forgot to call 2! fold_convert in gfc_trans_pointer_assign_need_temp 3! so that we got a pointer to char instead of a 4! pointer to an array 5! we really don't need a temp here. 6! { dg-do compile } 7 8 program test_forall 9 type element 10 character(32), pointer :: name 11 end type element 12 type(element) :: charts(50) 13 character(32), target :: names(50) 14 forall(i=1:50) 15 charts(i)%name => names(i) 16 end forall 17 end 18 19