https://gcc.gnu.org/bugzilla/show_bug.cgi?id=72709
janus at gcc dot gnu.org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |janus at gcc dot gnu.org --- Comment #3 from janus at gcc dot gnu.org --- Slightly reduced test case: program read_exp_data implicit none type experimental_data_t character(len=:), dimension(:), allocatable :: header end type type(experimental_data_t) :: ex integer, parameter :: nh = 3 integer :: i allocate(character(len=1) :: ex%header(nh)) ex%header(1) = "A" ex%header(2) = "B" ex%header(3) = "C" do i = 1, nh write(*,*) "header(",i,") = ", ex%header(i) enddo end program In fact the bug goes away if the 'header' component is declared with a fixed length (e.g. len=1).