http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57094
--- Comment #6 from Tobias Burnus <burnus at gcc dot gnu.org> 2013-05-08 07:22:05 UTC --- (In reply to comment #5) > For the record, the first test in comment #1 is invalid as n is not > initialized. Now I see something I don't expect for both trunk and > fortran-dev: > if I set n to 7, then printing tmp gives 'aaaaaa'. Is this expected? Yes, it is: str_vs(qname(1:n-1)) returns the string "abcdef" which is then assigned to the len=1 array "tmp": tmp = "abcdef" as tmp is only len=1, only "a" is assigned - to all elements of the size=6 array: character :: tmp(6) I assume you misread it as: character :: tmp*6 or as character(len=6) :: tmp