Skip to: Abstract | Comments | Solution | Related Segments | Migration | Download
APAR NUMBER: PJ29526 PRODUCT: TPF4 FUNCTIONAL AREA: ISO-C SUPPORT SHIPPED IN PUT: 19 ABSTRACT: Allow the entrc() function to be used in C++ code and C code compiled with the DLL option. APAR CONTENTS: FEATURE TYPE STATUS NAME Base CHeader Changed include/tpfapi.h PREREQUISITE APARS: To be applied in order listed. Base CHeader Changed include/tpfapi.h PJ25632(09) PJ25780(09) PJ26161(10) PJ26100(11) PJ26707(11) PJ26820(12) PJ26901(12) PJ26873(12) PJ26767(13) PJ27387(13) PJ27393(13) PJ27835(15) PJ28097(15) PJ27785(15) PJ28491(17) PJ28654(17) PJ28810(17) PJ28129(17) PJ29396(18) PJ29024(18) COMMENTS: The entrc() function cannot be used in C++ code or in C code compiled with the DLL option. This restriction needs to be removed. SOLUTION: This APAR removes the restrictions on the entrc() function. entrc() may now be coded in C++ code and C code compiled with the DLL option. This APAR satisfies FITS item MR1122025128. In addition, the function prototype for entrc() has been changed to allow for greater flexibility and ease of use. This new prototype for entrc() is compatible with the previous entrc() prototype, so there is no need to change existing programs that use entrc(). The new entrc() prototype and explanation is listed below. void *entrc(const char *program, ...); where program Pointer to the name of the application program that you want to enter. Program must be the 4-character name of a BAL segment, a TARGET(TPF) segment, or a TPF ISO-C DLM. ... - Additional parameters: If program is a basic assembler language (BAL) segment, exactly one additional parameter must be coded. The additional parameter must be a pointer to a TPF_regs structure (struct TPF_regs *) or must be coded as NULL. If the additional parameter is a pointer to a TPF_regs structure, the CP will load regs R0-R7 from TPF_regs before passing control to the called program. If the additional parameter is coded as NULL, no registers are loaded. If program specifies a TARGET(TPF) segment or a TPF ISO-C DLM, any number of additional parameters may be coded. Only signed or unsigned integral types (char, short, int, or long), pointer types, or double types may be passed as additional parameters. Return value If the program is a basic assembler language (BAL) segment, entrc does not return any data. If a pointer to a TPF_regs structure was coded, registers R0-R7 from the called program are stored in the TPF_regs structure, and data can be returned through the TPF_regs structure. If program specifies a TARGET(TPF) segment or a TPF ISO-C DLM, this function returns the cast to (void *) value returned by the program called. DEPENDENCIES SEGMENTS TO BE ASSEMBLED OR COMPILED: None. SEGMENTS TO BE LINK EDITED: None. COREQS: None. MIGRATION CONSIDERATIONS: None. UPDATED INFORMATION UNITS: TPF C/C++ Language Support User's Guide See your IBM representative if you need additional information. DOWNLOAD INSTRUCTIONS: http://www.ibm.com/software/htp/tpf/pages/maint.htm -- END APAR PJ29526
Download file(s): Login once to access server, leave window open, then click on link(s) below.Source
