APAR status
Closed as fixed if next.
Error description
C++ compiles for a sample program using CEESISET result in the following messages being issued and the compile fails. The compilation works if c89 or cc is used CCN5274 (S) The name lookup for "CEESISET" did not find a declaration. CCN0793(I) Compilation failed for file ./testsiset.C. Object file not created. FSUM3065 The COMPILE step ended with return code 12. FSUM3017 Could not compile testsiset.C. Correct the errors and try again. The leawi.h header is missing the prototypes for bit manipulation functions leading up to the messages being issued
Local fix
Use the following in a header file and include it in the program to avoid the compiler messages - #ifdef __cplusplus extern "C" { #endif #pragma map(CEESITST,"CEESITST") void CEESITST( _INT4 *, _INT4 *, _FEEDBACK *, _INT4 *); #ifdef __cplusplus } #endif
Problem summary
**************************************************************** * USERS AFFECTED: Applications that do not declare their * * own prototypes for the following bit * * manipulation functions when compiled * * as C++ or strict C99 programs: * * * * CEESICLR * * CEESISET * * CEESISHF * * CEESITST * **************************************************************** * PROBLEM DESCRIPTION: The C++ (and strict C99) compiler * * require explicit function * * declarations. The bit manipulation * * AWIs (CEESICLR, CEESISET, CEESISHF, * * and CEESITST) are not prototyped in * * the leawi.h header. If users call * * these functions without adding their * * own prototype, the C++ (or strict C99) * * compilers will emit an error message. * * * * For example, the C++ compiler will * * generate the following message if a * * source program uses CEESISET without * * declaring it first: * * * * CCN5274 (S) The name lookup for * * "CEESISET" did not find a declaration. * **************************************************************** * RECOMMENDATION: * **************************************************************** See Problem Description.
Problem conclusion
Temporary fix
As a temporary solution, users can create their own prototypes and declare them prior to calling one of the bit manipulation functions. The following code is an example of how to declare the bit manipulation AWIs. The _INT4 type and _FEEDBACK structure are declared in the leawi.h header, which must be included prior to the declarations below. If the following declarations are added to a header, include it after leawi.h and prior to any reference to these APIs. #ifdef __cplusplus extern "C" { #endif #pragma map(CEESICLR,"CEESICLR") #pragma map(CEESISET,"CEESISET") #pragma map(CEESISHF,"CEESISHF") #pragma map(CEESITST,"CEESITST") void CEESICLR( _INT4 *, _INT4 *, _FEEDBACK *, _INT4 *); void CEESISET( _INT4 *, _INT4 *, _FEEDBACK *, _INT4 *); void CEESISHF( _INT4 *, _INT4 *, _FEEDBACK *, _INT4 *); void CEESITST( _INT4 *, _INT4 *, _FEEDBACK *, _INT4 *); #ifdef __cplusplus } #endif
Comments
This APAR is being closed FIN with concurrence from the submitting customer. This means that a fix to this APAR is expected to be delivered from IBM in a release (if any) to be available within the next 24 months.
APAR Information
APAR number
PM01376
Reported component name
LE C LIBRARY
Reported component ID
568819805
Reported release
740
Status
CLOSED FIN
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2009-11-16
Closed date
2009-12-17
Last modified date
2009-12-23
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Applicable component levels
R740 PSN
UP
[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSCVSBD","label":"Runtime"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"740","Edition":"","Line of Business":{"code":"","label":""}},{"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":"740","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":null,"label":null},"Product":{"code":"SG19O","label":"APARs - MVS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"740","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
23 December 2009