! { dg-do compile }
! Test the fix for PR43492, in which the generic call caused and ICE.
!
! Contributed by Salvatore Filippone <sfilippone@uniroma2.it>
!
module base_mod
  
  type  :: base_mat
    integer, private     :: m, n
  contains 
    procedure, pass(a) :: transp1 => base_transp1
    generic, public    :: transp => transp1
    procedure, pass(a) :: transc1 => base_transc1
    generic, public    :: transc => transc1
  end type base_mat

contains

  subroutine base_transp1(a)
    implicit none 
    
    class(base_mat), intent(inout) :: a
    integer :: itmp
    itmp        = a%m
    a%m         = a%n
    a%n         = itmp
  end subroutine base_transp1
  subroutine base_transc1(a)
    implicit none 
    class(base_mat), intent(inout) :: a
    
    call a%transp() 
!!$    call a%transp1() 
  end subroutine base_transc1


end module base_mod
