1! { dg-do compile } 2! PR 70040 - used to cause an ICE. 3! Test case by Martin Reinecke 4program bugrep 5 implicit none 6 type :: string 7 character (len=:), allocatable :: s 8 end type 9 10 integer l 11 type(string), allocatable, dimension(:) :: foo 12 character(len=:),allocatable ::tmp 13 allocate(foo(20)) 14 do l= 1, 20 15 tmp = foo(5)%s 16 foo(5)%s = foo(l)%s 17 foo(l)%s = tmp 18 enddo 19end program 20