In the following code, __gfortran_os_error is thrown as unresolved at link time. The trouble goes away if //'=0' is removed.
$ cat silly.f character(16) :: str,namx len=4 namx='abcdefg' str=' ' str(7:)=namx(1:len)//'=0' write (6,*) str end $ gfortran silly.f /usr/bin/ld: Undefined symbols: __gfortran_os_error collect2: ld returned 1 exit status $ gfortran -v Using built-in specs. Target: i386-apple-darwin8.9.1 Configured with: ../gcc-4.3-20070518/configure --enable-languages=fortran --enable-static --disable-shared Thread model: posix gcc version 4.3.0 20070518 (experimental) $ uname -a Darwin Peter-Knowles-MacBook.local 8.9.1 Darwin Kernel Version 8.9.1: Thu Feb 22 20:55:00 PST 2007; root:xnu-792.18.15~1/RELEASE_I386 i386 i386 -- Summary: Unresolved external __gfortran_os_error in program that manipulates strings Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: KnowlesPJ at Cardiff dot ac dot uk GCC build triplet: i386-apple-darwin8.9.1 GCC host triplet: i386-apple-darwin8.9.1 GCC target triplet: i386-apple-darwin8.9.1 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32155