https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89077
--- Comment #6 from Harald Anlauf <anlauf at gmx dot de> --- (In reply to Harald Anlauf from comment #5) It does not fix the issue in comment #3. In fact, the simpler testcase program pr89077_3 implicit none character(20), parameter :: input = 'Forward' integer i character(len(input)), parameter :: same = & transfer (trim (input), trim (input)) print *, input, '#', len(input) print *, same, '#', len(same) end program pr89077_3 prints random junk on the second line: Forward # 20 ForwardQÀ@(# 20 :-(