A fix is available
APAR status
Closed as program error.
Error description
Loading and storing values from a bit field struct is causing a memory write overlay on memory past the end of the bit field. The issue occurs when loading and storing 4 bytes when only 3 bytes should be updated.
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: Users that have a bit field of three bytes * * occupying the last three bytes of a bit * * field container. For example:typedef struct * * { unsigned bf1:6; unsigned bf2:2; * * unsigned bf3:24;} A; * * * **************************************************************** * PROBLEM DESCRIPTION: The compiler is emitting a load/strore * * instruction starting at offset 1 thus * * accessing the byte following the bit * * field. In most cases this does not * * cause a problem since the byte * * following the bit field is updated * * with the same content it already has, * * but when the bit field is at the end * * of the address space or at the end of * * the page this produces an 0C4 ABEND. * **************************************************************** * RECOMMENDATION: Apply the provided PTF * * * **************************************************************** The compiler is producing bad code for sources with bit fields.
Problem conclusion
Apply provided service.
Temporary fix
Comments
APAR Information
APAR number
PI72792
Reported component name
C/C++ FOR MVS
Reported component ID
56551210A
Reported release
791
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2016-11-24
Closed date
2016-11-25
Last modified date
2017-01-03
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UI42900
Modules/Macros
CCNECICS CCNECWI CCNEDSCT CCNEDWRT CCNED211 CCNEFILT CCNEHIFC CCNEMDEP CCNEOPTP CCNEP CCNEPP CCNETBY CCNMSGE CCNMSGT
Fix information
Fixed component name
C/C++ FOR MVS
Fixed component ID
56551210A
Applicable component levels
R791 PSY UI42900
UP16/12/20 P F612
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":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"791","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSQKCWV","label":"IBM C\/C++ for MVS\/ESA"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"791","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]
Document Information
Modified date:
09 August 2024