A fix is available
APAR status
Closed as new function.
Error description
Adding a new phrase LOC to the ALLOCATE statement
Local fix
N/A
Problem summary
**************************************************************** * USERS AFFECTED: Users of Enterprise COBOL 6.2 who want to * * use the ALLOCATE statement to acquire * * dynamic storage below the 16 MB line when * * the DATA(31) compiler option is in effect, * * or acquire dynamic storage above the 16 MB * * line when the DATA(24) compiler option is * * in effect. * **************************************************************** * PROBLEM DESCRIPTION: New function: Users need more * * flexibility in controlling the * * location of dynamic storage acquired * * by the ALLOCATE statement. This APAR * * provides a new, optional phrase of the * * ALLOCATE statement, LOC (24|31), that * * overrides the influence of the DATA * * compiler option when determining the * * location of dynamic storage that is * * acquired. * **************************************************************** * RECOMMENDATION: Apply the provided PTF. * **************************************************************** When using the ALLOCATE statement before this APAR fix, the location of dynamic storage acquired is solely determined by the value of the DATA compiler option. If DATA(24) is in effect, dynamic storage is acquired below the 16 MB line; if DATA(31) is in effect, dynamic storage is acquired from above the 16MB line, when possible. However, users need a way to acquire dynamic storage from below the 16 MB line when DATA(31) is in effect and a way to acquire dynamic storage from above the 16 MB line when DATA(24) is in effect.
Problem conclusion
Temporary fix
Comments
The compiler was updated to support a new LOC phrase of the ALLOCATE statement, allowing users to control the location of dynamic storage independent of the DATA compiler option. +-------------------------------------------------------------+ | Start of changes for: | | Enterprise COBOL for z/OS Language Reference, SC27-8713-00 | Part 6. Procedure division, Chapter 15: Procedure division statements Update the description of section "ALLOCATE statement". ALLOCATE statement Format >>-ALLOCATE--+-arithmetic-expression-1--CHARACTERS-+---------> '-data-name-1-------------------------' >-+-------------+-+------------+-+------------------------+->< '-INITIALIZED-' '-LOC-+-24-+-' '-RETURNING--data-name-2-' '-31-' ... LOC phrase The LOC phrase controls how ALLOCATE acquires storage. LOC 24 . Causes ALLOCATE to acquire storage from below the 16 MB line, regardless of the setting of the DATA option. LOC 31 . Causes ALLOCATE to attempt to acquire storage from above the 16 MB line, regardless of the setting of the DATA option. Note that it is still possible that memory is acquired below the 16 MB line with LOC 31 if memory above the 16 MB line is exhausted. ... When the LOC phrase is not specified: - LOC 31 is assumed to be specified whenever the DATA(31) compiler option is in effect. - LOC 24 is assumed to be specified whenever the DATA(24) compiler option is in effect. Note: It is recommended to use the default value of LOC unless dynamic storage below the 16 MB line is required when DATA(31) is in effect, or dynamic storage above the 16 MB line is desired when the DATA(24) option is in effect. ... The DATA compiler option setting influences how ALLOCATE acquires storage: - If DATA(24) is in effect and the LOC 31 phrase of the ALLOCATE statement is not specified, ALLOCATE acquires storage from below the 16 MB line. - If DATA(31) is in effect and the LOC 24 phrase of the ALLOCATE statement is not specified, ALLOCATE will attempt to acquire storage from above the 16 MB line. Appendix A. IBM Extensions Add a new row to "Table 56. IBM extension language elements" as follows: .-------------------------------------------------------------. | ALLOCATE statement | LOC phrase | '-------------------------------------------------------------' | End of changes for: | | Enterprise COBOL for z/OS Language Reference, SC27-8713-00 | +-------------------------------------------------------------+ +-------------------------------------------------------------+ | Start of changes for: | | Enterprise COBOL for z/OS Programming Guide, SC27-8714-00 | Part 1. Coding your program Chapter 2. Using data Update section "Storage and its addressability" Add new sub-section: Storage for ALLOCATE statement The DATA compiler option setting influences how ALLOCATE acquires storage: - If DATA(24) is in effect and the LOC 31 phrase of the ALLOCATE statement is not specified, ALLOCATE acquires storage from below the 16 MB line. - If DATA(31) is in effect and the LOC 24 phrase of the ALLOCATE statement is not specified, ALLOCATE will attempt to acquire storage from above the 16 MB line. | End of changes for: | | Enterprise COBOL for z/OS Programming Guide, SC27-8714-00 | +-------------------------------------------------------------+
APAR Information
APAR number
PI95081
Reported component name
ENT COBOL FOR Z
Reported component ID
5655EC600
Reported release
620
Status
CLOSED UR1
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2018-03-13
Closed date
2018-03-15
Last modified date
2018-04-03
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Modules/Macros
IGY8RWTU IGYCASMB IGYCCBE IGYCCCRT IGYCCICS IGYCCSRV IGYCDGEN IGYCDIAG IGYCDMAP IGYCEN$0 IGYCEN$1 IGYCEN$2 IGYCEN$3 IGYCEN$4 IGYCEN$5 IGYCEN$8 IGYCEN$D IGYCEN$R IGYCFGEN IGYCFREE IGYCINIT IGYCJA$0 IGYCJA$1 IGYCJA$2 IGYCJA$3 IGYCJA$4 IGYCJA$5 IGYCJA$8 IGYCJA$D IGYCJA$R IGYCLIBH IGYCLIBO IGYCLIBR IGYCLSTR IGYCLVL0 IGYCLVL1 IGYCLVL2 IGYCLVL3 IGYCLVL8 IGYCMALL IGYCOPI IGYCOSCN IGYCPGEN IGYCRCTL IGYCRDPR IGYCRDSC IGYCREAL IGYCRWT IGYCSCAN IGYCSIMD IGYCUE$0 IGYCUE$1 IGYCUE$2 IGYCUE$3 IGYCUE$4 IGYCUE$5 IGYCUE$8 IGYCUE$D IGYCUE$R IGYCXREF IGYDRV IGYEQCWI IGYMSGE IGYMSGK IGYMSGT IGYQCBE IGYWCL IGYWCLG IGYZQDRV IGYZQENU IGYZQJPN
SC27871300 | SC27871400 |
Fix information
Fixed component name
ENT COBOL FOR Z
Fixed component ID
5655EC600
Applicable component levels
R620 PSY UI54510
UP18/03/28 P F803
R621 PSY UI54511
UP18/03/28 P F803
R622 PSY UI54512
UP18/03/28 P F803
Fix is available
Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.
[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SS6SG3","label":"Enterprise COBOL for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"620","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]
Document Information
Modified date:
12 December 2023