When an array element is extracted from an unlimited polymorphic array, the
emboxing of this element has to retrive the type code and element size from
the initial array. This patch retrive this information through the extracted
type descriptor.
This situation can be found in code like:
subroutine sub1(a) class(*) :: a(:) select type (x=>a(1)) type is (integer) x = 10 end select end subroutine