Receiving value parameters in C++

If you enclose in parentheses the argument you pass from a PL/I routine to a C++ routine, the argument is passed by value. C++ should receive the parameter as the equivalent C++ type. The XL C++ compiler generates the appropriate addressing code required to access the parameter values.

You can write your PL/I-callable function as if it were in a C++-only environment; you can move it to a C++-only environment simply by removing the extern "PLI" linkage specification.