|
Barbara,
Are you contemplating extending the parameter definition with
OPTIONS(*EXACT)? If so, would it not be more appropriate to add a control
specification keyword, e.g. PARMSIZE(*EXACT), to force the proper
behaviour?
Joep Beckeringh
rpg400-l-bounces@xxxxxxxxxxxx wrote on 27-03-2012 23:44:09:
Barbara Morris
For a prototyped parameter passed by reference (no CONST or VALUE), the
compiler doesn't complain about a fixed length passed parameter being
longer than the fixed length prototyped parameter. It only cares about
the passed parameter being shorter.
For varying-length parameters passed by reference, the compiler does
require that the declared length of the passed parameter match the
declared length of the prototyped parameter.
When we added support for prototyped parameters, we were mainly
concerned with data corruption, which isn't possible with too-long
parameters. After 15+ years of reflection, I think we were perhaps a bit
short-sighted not to also worry about data loss, and maybe should have
required *VARSIZE for any reference-parameter mismatch.
Maybe OPTIONS(*EXACT) is needed.
--
Barbara
--
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.