J3/04-321 Date: 13 May 2004 To: J3 From: Richard Maine Subject: Component value for pointer components NUMBER: TITLE: Component value for pointer components KEYWORDS: component, value, pointer DEFECT TYPE: Erratum STATUS: J3 consideration in progress QUESTION: According to 4.5.7, the component value for an allocatable component includes the bounds if the component is allocated. However, no mention is made of the bounds of pointer components. It is possible for pointers with different bounds to be associated with the same target (13.7.13); therefore, I conclude that the bounds are not part of the association. Is it standard conforming for a processor to print 1 as a result of the folloing program? program me type t integer, pointer :: p(:) end type t type(t) :: x allocate(x%p(3:5)) call sub(x) contains subroutine sub(y) type(t), value :: y write (*,*) lbound(y%p) end subroutine sub end program me ANSWER: No, a processor is required to print 3 as a result of the above program. The component value of a pointer component should have included its bounds. An edit is provided to fix this oversight. EDITS: [62:11] Before the ";" insert "and, if it is associated, its bounds" SUBMITTED BY: Richard Maine HISTORY: J3/04-321 m169 Submitted