|
CL is passing the parameter by reference (i.e. a pointer is passed to the RPG procedure). By coding the parameter as VALUE you specified that the data be passed. When using RPG to call the routine the compiler honors the prototype and passes the parm by value, CL can't see the proto and so does "what comes naturally". Just drop the VALUE keyword and you'll be fine. If you need the flexibility afforded by VALUE when calling from RPG (i.e. being able to use an expression, literal or constant as the parm) then substitute CONST for VALUE. Read the good 'ole RPG Redbook ("Who Knew ... etc.") for more details on parameter passing conventions and associated prototype keywords. Jon Paris Partner400
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.