A fix is available
APAR status
Closed as program error.
Error description
Using the SIZEOF intrinsic is causing a (U) error when the SIZEOF is used in an array definition: CHARACTER(LEN=SIZEOF(VAL)) char_val === TEST CASE === SUBROUTINE TEST () character*6 val CHARACTER(LEN=SIZEOF(VAL)) char_val RETURN END "test.f", line 3.28: 1516-050 (S) Expression or initial value must be evaluated at compile time. 1517-004: (U) Missing procedure list entries. Please contact your Service Representative. For more information visit: http://www.ibm.com/support/docview.wss?uid=swg21110810 1501-511 Compilation failed for file test.f.
Local fix
Use the LEN intrinsic instead of SIZEOF: CHARACTER(LEN=LEN(VAL)) char_val
Problem summary
PROBLEM DESCRIPTION: The compiler does not evaluate the result of SIZEOF at compile time when the argument of the intrinsic has compile-time known size. Instead, the compiler either incorrectly issues an error message or generates runtime code that can get lost due to freeing stacks. USERS AFFECTED: Users who use the SIZEOF intrinsic on character types in an initialization expression or specification expression.
Problem conclusion
The SIZEOF intrinsic has been fixed to produce the correct result.
Temporary fix
Comments
APAR Information
APAR number
LI78484
Reported component name
XL FORTRAN LINU
Reported component ID
5725C7500
Reported release
F10
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2015-02-25
Closed date
2015-02-25
Last modified date
2015-02-25
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
XL FORTRAN LINU
Fixed component ID
5725C7500
Applicable component levels
RF10 PSY
UP
[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSAT4T","label":"XL Fortran for Linux"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"15.1","Line of Business":{"code":"LOB57","label":"Power"}}]
Document Information
Modified date:
17 October 2021