|
Mark, I think you're in luck. Create two source members, one C and one CL and run this test. It should apply to your scenario. /* this is C module CMAINTST */ int main(void) { return 3; } /* this is CL module CLMAINTST */ pgm dcl &retval *char 4 x'00000000' dcl &charval *char 10 CALLPRC PRC('main') RTNVAL(%bin(&RETVAL 1 4)) chgvar &charval %bin(&retval 1 4) SNDPGMMSG MSG('charval = ' *CAT &CHARVAL) endpgm CRTCMOD MODULE(QGPL/CMAINTST) SRCFILE(QGPL/C) CRTCLMOD MODULE(QGPL/CLMAINTST) SRCFILE(QGPL/CLP) CRTPGM PGM(QGPL/CLMAINTST) MODULE(QGPL/CLMAINTST QGPL/CMAINTST) CALL QGPL/CLMAINTST Returns: charval = 0000000003 Elvis -----Original Message----- Subject: Retrieving error return code from C program I am calling a C program from CL via the CALL command. The C function returns an error number like 0 or 1 for success or failure. Is there some way to retrieve this value from a CL program? I can run the program via QSH and see the return code, but I would prefer to just use CALL for this. I assume there is no way to use CALLPRC when you need to run the main() function in a C *PGM? Thanks Mark
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.