! { dg-do run  }
! { dg-options -std=gnu }
! PR55117  Programs fails namelist read (contains derived types objects)
program test_type_extension

  type tk_t
     real :: x
  end type tk_t

  type, extends(tk_t) :: tke_t
     character(8) :: string
  end type tke_t

  type, extends(tke_t) :: deep
    integer :: int1
    real :: y
    character(10) :: the_name
  end type deep

  type other
    integer :: one_oh
    integer :: two_oh
  end type other

  type plain_type
    integer :: var1
    type(other) :: var2
    real :: var3
  end type plain_type

  type some_other
    complex :: varx
    type(tke_t) :: tke
    type (plain_type) :: varpy
    real  :: vary
  end type some_other

  type(deep) :: trouble
  type(some_other) :: somethinelse
  type(tke_t) :: tke
  integer :: answer
  
  namelist /test_NML/ trouble, somethinelse, tke, answer

  tke%x = 0.0
  tke%string = "xxxxxxxx"
  answer = 5
  trouble%x = 5.34
  trouble%y = 4.25
  trouble%string = "yyyy"
  trouble%the_name = "mischief"

  open(10, status="scratch")
  
  write(10,*) "&TEST_NML"
  write(10,*) "TKE%X=  3.14    ,"
  write(10,*) "TKE%STRING='kf7rcc',"
  write(10,*) "ANSWER=          42,"
  write(10,*) "/"
  rewind(10)
  
  read(10,NML=test_NML)
  if (tke%x - 3.14000010 > .00001) STOP 1
  if (tke%string /= "kf7rcc") STOP 2
  if (answer /= 42) STOP 3! hitchkikers guide to the galaxy
end program test_type_extension
