Fixes are available
APAR status
Closed as program error.
Error description
In a class hierarchy contained in 2 separate modules, when a procedure that uses an unlimited polymorphic dummy argument is overridden, an invalid error message is output. In the following example, A_Set is overridden by B_Set, and an unlimited polymorphic argument (class(*)) is used. The error doesn't appear if the parent and child classes are declared in the same module. === TEST CASE === module A implicit none type, abstract :: Type_A contains procedure :: Set => A_Set end type contains subroutine A_Set(this, Value) class(Type_A), intent(IN) :: this class(*), intent(Out) :: Value select type(Value) type is(integer) Value = 1 end select end subroutine end module module B use A implicit none type, extends(Type_A) :: Type_B contains procedure :: Set => B_Set end type contains subroutine B_Set(this, Value) class(Type_B), intent(IN) :: this class(*), intent(Out) :: Value select type(Value) type is(integer) Value = 2 end select end subroutine end module $ xlf2003 -c test.f03 ** a === End of Compilation 1 === "test.f03", line 24.18: 1514-670 (S) Dummy argument value of overridden binding set and the corresponding dummy argument of overriding binding set must have the same type and type parameters. ** b === End of Compilation 2 === 1501-511 Compilation failed for file test.f03. $
Local fix
N/A
Problem summary
PROBLEM DESCRIPTION: When a binding is overridden, the types and type parameters of all corresponding non-passed object dummy arguments have to match between the overriding binding and the overridden binding. When the corresponding dummy arguments are both unlimited polymorphic, XL Fortran was incorrectly flagging them as mismatched. USERS AFFECTED: Users of XL Fortran who try to override a binding that has an unlimited polymorphic dummy argument.
Problem conclusion
The problem has been fixed
Temporary fix
Comments
APAR Information
APAR number
LI79021
Reported component name
XL FORTRAN FOR
Reported component ID
5799AH100
Reported release
E10
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2016-04-22
Closed date
2016-05-16
Last modified date
2016-05-16
APAR is sysrouted FROM one or more of the following:
LI78881
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
XL FORTRAN FOR
Fixed component ID
5799AH100
Applicable component levels
RE10 PSY
UP
[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SS2MB5","label":"XL Fortran for Blue Gene\/Q"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"ALL VERSIONS","Edition":"","Line of Business":{"code":"LOB57","label":"Power"}}]
Document Information
Modified date:
16 May 2016