× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



David,

When calling a procedure, a CONST parameter cannot be changed in the called procedure. There may be some trickery available to do it, but you'd have to work pretty hard to fool the compiler.

The comment "the parameter is not INTENDED to be changed." probably referred to the case when using a prototyped call to a program, via the EXTPGM() keyword. In that case, the caller may specify CONST, but the called program sees the parm as a "regular" parm, meaning by reference.

A VALUE parm can be changed in the called procedure, but the changed value will not be passed back to the caller.

-mark


At 1/28/09 01:09 PM, you wrote:
David wrote:
> I thought I would read in the data area in my main procedure
> and then directly call a subprocedure with CONST on the parameter
> to protect my data area.
> However, from experience I've noticed that it is still possible to modify
> the parameter inadvertently, and we have already discussed this.
> Someone said that CONST in reality only means that the parameter
> is not INTENDED to be changed.

> So, I just thought it was a bit ironic : normally, I use CONST on all
> parameters
> used for input. But now that I REALLY don't want my parameter to be
> changed,
> I shall code VALUE instead.


David -

I have this page bookmarked:
http://www.web400.com/download/ilerpg/subprocedure_parameters2.htm

- sjl


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

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.