https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65548
--- Comment #27 from Jürgen Reuter <juergen.reuter at desy dot de> --- And Example #2 is: module foo type :: t integer :: n character(32), dimension(:), allocatable :: md5 contains procedure :: init => t_init end type t contains subroutine t_init (this) class(t), intent(inout) :: this character(32), dimension(:), allocatable :: md5 allocate (md5 (this%n), source=this%md5) end subroutine t_init end module foo $ gfortran -c bar.f90 bar.f90:14:0: allocate (md5 (this%n), source=this%md5) 1 internal compiler error: Segmentation fault: 11 dreck.f90:14:0: internal compiler error: Abort trap: 6 gfortran: internal compiler error: Abort trap: 6 (program f951)