See http://gcc.gnu.org/ml/gcc-patches/2009-08/msg00621.html and follow ups starting at http://gcc.gnu.org/ml/fortran/2009-08/msg00120.html
Without the following patch, there is at least on Win64 a pointer cast warning: libgfortran/intrinsics/string_intrinsics_inc.c: - starting = ((unsigned long) (s + i + 1)) % long_len; + starting = ((unsigned long) (__INTPTR_TYPE__) (s + i + 1)) % long_len; But we cannot use __INTPTR_TYPE__ unconditionally as it does not exist on all systems, cf. http://gcc.gnu.org/ml/fortran/2009-08/msg00122.html -- Summary: libgfortran: Silence compiler warning (pointer cast) Product: gcc Version: 4.5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: burnus at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41066