------- Comment #4 from boschmann at tp1 dot physik dot uni-siegen dot de 2010-04-09 15:22 ------- I've tried to isolate the error message from the ICE. The smallest code is a_module for the error and b_module for the ICE. a_module is valid f2003 code but b_module is not, it contains a pointer of undefined class. I guess that this case occurs when error_stack_module is compiled: error_type will not be defined in consequence of the "must not be POINTER" error but will be used as class later.
module a_module implicit none type::a_type class(a_type),pointer::a_component contains procedure::proc=>a_proc end type a_type contains subroutine a_proc(this) class(a_type)::this end subroutine a_proc end module a_module !!$ > gfortran -c a.f03 !!$ a.f03:6.14: !!$ !!$ procedure::proc=>a_proc !!$ 1 !!$ Error: Passed-object dummy argument of 'a_proc' at (1) must not be POINTER module b_module implicit none type::b_type class(not_yet_defined_type_type),pointer::b_component end type b_type end module b_module !!$ > gfortran -c b.f03 !!$ f951: internal compiler error: in find_typebound_proc_uop, at fortran/symbol.c:4863 !!$ Please submit a full bug report, !!$ with preprocessed source if appropriate. !!$ See <http://gcc.gnu.org/bugs.html> for instructions. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43696