(j3.2006) polymorphic assumed-size actual arguments
Robert Corbett
robert.corbett
Fri Dec 17 04:45:01 EST 2010
Is the program given below standard conforming? If not, why not?
MODULE TYPES
PRIVATE
PUBLIC REC, REC2
TYPE REC
INTEGER A
END TYPE
TYPE, EXTENDS(REC) :: REC2
INTEGER B
END TYPE
END
SUBROUTINE SUB1(A, N)
USE TYPES
CLASS(REC), INTENT(IN) :: A(*)
CALL SUB2(A, N)
END
SUBROUTINE SUB2(A, N)
USE TYPES
TYPE(REC) A(*)
PRINT *, A(:N)%A
END
PROGRAM MAIN
USE TYPES
CLASS(REC), ALLOCATABLE :: A(:)
INTERFACE
SUBROUTINE SUB1(A, N)
USE TYPES
CLASS(REC), INTENT(IN) :: A(*)
END SUBROUTINE
END INTERFACE
A = [ (REC2(I, I+1), I = 1, 10) ]
CALL SUB1(A, 10)
END
More information about the J3
mailing list