For instance in:
type :: array_type
real :: scalar
real, dimension(10) :: field
real, pointer :: ptr
end type
because the real, pointer :: ptr is not catched when processing the componets it propagates to the full type declaration.
If the code is improved maybe we could also do #1418 which maybe needs handling in a similar place.