A fix is available
APAR status
Closed as program error.
Error description
A dynamic_cast fails with a NULL return value on an expected successful cast using a target type found in two separate modules (main executable and DLL, or two DLLs).
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: Users of Open XL C/C++ 2.1 particularly * * those * * employing dynamic_cast or exception * * handling involving the casting * * and comparison of type_info objects across * * DLL boundaries, * * may encounter discrepancies. * **************************************************************** * PROBLEM DESCRIPTION: The type_info objects across DLL * * boundaries, * * even when referring to identical * * object have different addresses * * and not treated as equivalent. * **************************************************************** * RECOMMENDATION: After applying the PTF, * * recompile the entire application if any of * * the following * * type_info object functions are utilized: * * before(), hash_code(), operator==, or * * operator!=. * * This measure ensures compatibility and * * correct behaviour * * of these functions post-PTF installation. * **************************************************************** The compiler will perform string comparison of type_info when comparing their addresses fail to make sure type_info across DLL boundaries are found to be equivalent.
Problem conclusion
The addition of comparing `__type_name_t` is encoding sensitive.
Temporary fix
Comments
APAR Information
APAR number
PH69199
Reported component name
ANSI C++ CLASS
Reported component ID
568819807
Reported release
7D0
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2025-11-27
Closed date
2025-12-01
Last modified date
2025-12-12
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Modules/Macros
CELQDEST CRTDHCXA CRTDHCXE CRTDHCXG CRTDHCXH CRTDHCXP CRTDHCXS CRTDHUNW CRTDNCXA CRTDNCXE CRTDNCXH CRTDNCXP CRTDNUNW CRTDOCXA CRTDQCXA CRTDQCXE CRTDQCXG CRTDQCXH CRTDQCXP CRTDQCXS CRTDQUNW CRTDQXLA CRTEHCXA CRTEHCXE CRTEHCXG CRTEHCXH CRTEHCXP CRTEHCXS CRTEHUNW CRTENCXA CRTENCXE CRTENCXH CRTENCXP CRTENUNW CRTEOCXA CRTEQCXA CRTEQCXE CRTEQCXG CRTEQCXH CRTEQCXP CRTEQCXS CRTEQUNW CRTEQXLA EDCHDEST
Fix information
Fixed component name
ANSI C++ CLASS
Fixed component ID
568819807
Applicable component levels
R7D0 PSY UO06020
UP25/12/12 I 1000
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":"SSTLTF","label":"z\/OS XL C\/C++"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7D0","Line of Business":{"code":"LOB08","label":"Cognitive Systems"}}]
Document Information
Modified date:
12 December 2025