here is the test code:
character(len=100)::buf
write(buf,*)0.,'ABC'
write(*,*)buf
end
With intel (Composer XE 2015) the output is
0.0000000E+00ABC
while with G95 it is
0. ABC
Note the space with G95, which allows a subsequent read(...,*).
This seems like a bug to me.