The code below gives the error in the summary line for both writes of X%i. I'm using the latest svn version (106896).
> gfortran-CVS gfortran3.F95 && ./a.out At line 26 of file gfortran3.F95 Internal Error: Derived type I/O should have been handled via the frontend. ----------------------------------------------- module gfortran3 type tp integer :: i end type contains subroutine inittp(X) type(tp), intent(inout) :: X(:) X%i = 256 end subroutine inittp subroutine test(x) type(tp), intent(in) :: x(:) write(*,*) x%i write(*,*) x end subroutine test end module program prog use gfortran3 implicit none type(tp) :: Y(5) call inittp(Y) write(*,*) Y%i call test(Y) end program prog -------------------------------------- > gfortran-CVS -v gfortran3.F95 && ./a.out Driving: gfortran-CVS -v gfortran3.F95 -lgfortranbegin -lgfortran -lm -shared-libgcc Using built-in specs. Target: i686-pc-linux-gnu Configured with: ../configure --prefix=/home/zeekec/local --program-suffix=-CVS --disable-nls : (reconfigured) ../configure --prefix=/home/zeekec/local --program-suffix=-CVS --disable-nls --enable-languages=c,c++,fortran,java,objc --no-create --no-recursion Thread model: posix gcc version 4.1.0 20051114 (experimental) /home/zeekec/local/libexec/gcc/i686-pc-linux-gnu/4.1.0/cc1 -E -lang-fortran -traditional-cpp -D_LANGUAGE_FORTRAN -quiet -v gfortran3.F95 -mtune=pentiumpro -o /tmp/ccdkugj8.f95 ignoring nonexistent directory "/home/zeekec/local/lib/gcc/i686-pc-linux-gnu/4.1.0/../../../../i686-pc-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /usr/local/include /home/zeekec/local/include /home/zeekec/local/lib/gcc/i686-pc-linux-gnu/4.1.0/include /usr/include End of search list. /home/zeekec/local/libexec/gcc/i686-pc-linux-gnu/4.1.0/f951 /tmp/ccdkugj8.f95 -quiet -dumpbase gfortran3.F95 -mtune=pentiumpro -auxbase gfortran3 -version -o /tmp/ccg6IRy3.s GNU F95 version 4.1.0 20051114 (experimental) (i686-pc-linux-gnu) compiled by GNU C version 4.1.0 20051108 (experimental). GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 as -V -Qy -o /tmp/ccGjbqT8.o /tmp/ccg6IRy3.s GNU assembler version 2.15.92.0.2 (i386-redhat-linux) using BFD version 2.15.92.0.2 20040927 /home/zeekec/local/libexec/gcc/i686-pc-linux-gnu/4.1.0/collect2 --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 /usr/lib/crt1.o /usr/lib/crti.o /home/zeekec/local/lib/gcc/i686-pc-linux-gnu/4.1.0/crtbegin.o -L/home/zeekec/local/lib/gcc/i686-pc-linux-gnu/4.1.0 -L/home/zeekec/local/lib/gcc/i686-pc-linux-gnu/4.1.0/../../.. /tmp/ccGjbqT8.o -lgfortranbegin -lgfortran -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /home/zeekec/local/lib/gcc/i686-pc-linux-gnu/4.1.0/crtend.o /usr/lib/crtn.o At line 26 of file gfortran3.F95 Internal Error: Derived type I/O should have been handled via the frontend. -- Summary: Internal Error: Derived type I/O should have been handled via the frontend. Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: zeekec at mad dot scientist dot com GCC build triplet: i686-pc-linux-gnu GCC host triplet: i686-pc-linux-gnu GCC target triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24862