------- Comment #3 from dominiq at lps dot ens dot fr 2009-08-14 00:14 ------- Reduced test case:
module SysKinds INTEGER, PARAMETER :: DefaultInteger = kind (1) INTEGER (DefaultInteger), PARAMETER :: ASCIICharacterKind = KIND ("A") integer(DefaultInteger), parameter :: SmallInteger = selected_int_kind (4) end module SysKinds module Parser use SysKinds interface PutALine module procedure Line_from_string end interface integer (SmallInteger), parameter :: LINE_LENGTH = 200 type, public :: TStringBlock private character (LINE_LENGTH, ASCIICharacterKind) :: theLine = " " integer (SmallInteger) :: CurrentIndex, LastIndex = 0, NextIndex end type TStringBlock contains subroutine Line_from_string end subroutine Line_from_string end module Parser module CmndType use SysKinds use Parser, only : PutALine, TstringBlock implicit none type, public :: Tcommand type (TstringBlock) :: commandLine end type Tcommand contains subroutine Dump_cmd (this, tag) type (TCommand), intent (IN) :: this character (*, ASCIICharacterKind), intent (IN), optional :: tag call PutALine () contains subroutine PutALine (user_Line) character (*, ASCIICharacterKind), intent (IN), optional :: user_Line end subroutine PutALine end subroutine Dump_cmd end module CmndType gives an ICE with trunk and 4.4.1: [ibook-dhum] bug/bug7% gfc cmndtypeM_red.f90 cmndtypeM_red.f90:36:0: internal compiler error: in gfc_trans_use_stmts, at fortran/trans-decl.c:3438 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. compiles with 4.3.4, hence a regression. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41062