------- Comment #10 from burnus at gcc dot gnu dot org 2007-09-17 17:39 ------- For the warning that TRANSFER contains partially undefined values, see also PR 33037. For MERGE, see PR 33455
Independent of those, the following valid program still gives an ICE (if one removes the "20" in transfer, the ICE is gone). Also the patch http://gcc.gnu.org/ml/gcc-patches/2007-05/msg01953.html does not seem to help. character(len=20) :: string logical :: a(20) a = .true. write(*,*) transfer (merge (transfer(REPEAT("A",20), "x", 20), "b", a), string ) end -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31610