http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44978
--- Comment #1 from janus at gcc dot gnu.org 2013-04-13 11:15:01 UTC --- Similar problems of multiple error messages occur also with non-extended types which have type-bound procedures. Reduced example from PR 55959 comment 4: module pdfs type :: pdf_point contains procedure :: pdf_point_getx end type contains function pdf_point_getx (this) class(pdf_point), intent(in) :: this real, dimension(x) :: pdf_point_getx end function end module The following error message occurs three times here: real, dimension(x) :: pdf_point_getx 1 Error: Expression at (1) must be of INTEGER type, found REAL