Declaring C to PL/I ILC

Declaring a C entry point in a PL/I routine has the same syntax as declaring another PL/I entry point. A C routine can be replaced by a PL/I routine without altering the PL/I code that calls the routine. Likewise, if a C routine calls a PL/I routine, the PL/I procedure contains no explicit declaration indicating control is being passed from the C routine. The declaration is contained within the C routine.

In C, you must declare that the C entry point receives control from a PL/I routine. This declaration is in the form of a pragma. The body of the C function is the same as if the routine were called from another C function. Calling a PL/I routine and being called by a PL/I routine are handled by the same #pragma preprocessor directive. No special linkage declaration is required for ILC between C and Enterprise PL/I for z/OS®.