We need to escape non-printable characters when we read/write module files.
Otherwise, big bad ICE:

module m
 character(*), parameter ::  a ='H\0z'
end module m

use m
print *, a  ! ICE
print *, ichar(a(1:1)), ichar(a(2:2)), ichar(a(3:3))  ! ICE
end


-- 
           Summary: Non-ASCII character in module string gives ICE
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: fxcoudert at gcc dot gnu dot org
        ReportedBy: fxcoudert at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36162

Reply via email to