|
On Mon, 5 Jun 2006, Elvis Budimlic wrote:
OPM compiled programs maintain a count of parameters and if you pass extra in you'll get exceptions. ILE compiled programs will ignore extra parms.
This is true of CL programs, but not of RPG programs. OPM RPG programs ignore extra parms, just like the ILE ones do.
On Mon, 5 Jun 2006, Michael Naughton wrote:
The thing is, the first program (the once called from the Domino application) runs fine -- it accepts the parm, removes the null terminator and pads it with spaces, and then calls a CL program passing the cleaned version as a parm. The CL program then bombs the first time it tries to use that parm.
Is it possible that the program that removes the null terminator and pads it with spaces is using teraspace memory to do that? If so, that'd explain why you get the MCH3602, and why it works with ILE programs (which understand how to work with teraspace) but doesn't work with OPM programs (which don't understand teraspace).
I don't see why a V5R2 -> V5R4 upgrade would cause this problem, unless you replaced the "first program" (the one that removes the null and pads with blanks) when you upgraded it.
The only other possibility that comes to mind is that one of the programs (possibly the one removing the null and adding spaces) is overwriting memory that doesn't belong to it. It's possible that in V5R2, you got "lucky" and overwrote memory that wasn't in use, but that a change in V5R4 caused the layout in memory to change so that you're now overwriting part of a pointer variable.
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.