|
Is it possible to call from a C pgm an ILE/RPG subprocedure which returns a 20
position character? When it returns I get a pointer error. I tried returning
the address with %addr(filename), which didn't end in error but the value wasn't
correct.
Here's the c pgm:
char * getHist(char[], const char[]);
#pragma map(getHist, "GETHIST")
void main(void)
{
char *filename = "\0";
strcpy(isodate, "2003-02-01");
filename = getHist(isodate, "OCT");
return;
}
here's the rpg procedure:
P getHist b export
D getHist pi 20
D date d datfmt(*iso)
D filemon 3 const
D
D filename s 20
C eval filename='FILEONE FILETWO'
C
C return filename
P e
I appreciate any help you can give!
Thanks,
Phil
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 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.