J3/15-111r1 To: J3 Subject: Wart removal proposal -- pointer arguments to SAME_TYPE_AS From: Van Snyder Date: 2015 February 24 Reference: 15-007 1. Introduction =============== The dynamic type of a nonpolymorphic pointer is always well defined. Therefore the requirement that a pointer argument to SAME_TYPE_AS shall not have undefined association status is not necessary for nonpolymorphic arguments. The following works: type(t), pointer :: P class(t), intent(in) :: A nullify ( p ) if ( same_type_as ( A, P ) ) ... The following does not work (for no good reason): type(t), pointer :: P class(t), intent(in) :: A ! nullify ( p ) if ( same_type_as ( A, P ) ) ... The same observation and argument apply to EXTENDS_TYPE_OF. 2. Requirements =============== Allow a nonpolymorphic argument to EXTENDS_TYPE_OF or SAME_TYPE_AS to have undefined pointer association status. 3. Syntax ========= No change to existing syntax. 4. Edits ======== [Introduction, under "Intrinsic Functions"] Insert list item "-- Nonpolymorphic pointer arguments to EXTENDS_TYPE_OF or SAME_TYPE_AS are not required to have defined pointer association status." [353:25,27 13.7.61p3] Insert "polymorphic" before "pointer" twice. [391:32,34 13.7.147p3] Insert "polymorphic" before "pointer" twice.