------- Comment #1 from janus at gcc dot gnu dot org 2010-04-15 21:30 ------- Here is a reduced test case, which ICEs with the same backtrace:
module m_string type t_string character, dimension(:), allocatable :: string contains procedure :: char => string_to_char end type t_string contains function string_to_char (s) result(res) class(t_string), intent(in) :: s character(len=size(s%string)) :: res end function string_to_char end module m_string -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43227