Pure procedure and intent(out) polymorphic pointer argument

I got confused here. The association is not between pointers, but between pointers and targets. Thanks for the correction.