http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45889
kargl at gcc dot gnu.org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |kargl at gcc dot gnu.org --- Comment #6 from kargl at gcc dot gnu.org 2010-10-05 15:33:02 UTC --- If you remove the parentheses then code compiles. That is, change do i = 1, current_cell%num_species write(*,*) (current_cell%species_symbol(i)) end do to do i = 1, current_cell%num_species write(*,*) current_cell%species_symbol(i) end do You can also change the expression (yes, it is an expression in your transfer) to do i = 1, current_cell%num_species write(*,*) (current_cell%species_symbol(i)//'') end do if you are dead set on using the superfluous parenthesis.