Understood I look to do better Thanks
> On Dec 17, 2023, at 7:59 AM, Peter Relson <[email protected]> wrote: > > Ed J wrote > <snip> > Always code PLISTVER=MAX on the list form but (based on recent > experience) *never* code it on the execute form of a macro unless you > want to risk things not working as expected on back-level systems. > </snip> > > I'd make it "almost always". > > The case that comes up occasionally, and is a reason that the default is not > PLISTVER=MAX, is when someone has embedded the list form in a structure (not > at the end) so that if the size changed, fields beyond this structure would > have changed offsets and if you didn't recompile everything appropriate > things would break. That potential incompatibility drives the default. And, > yes, the default has the downside that if your list form "gets it wrong", > things don't work. > Compatibility wins in this case. > > The documentation for PLISTVER (at least within the macro itself) includes: > > If your program can > tolerate this, IBM recommends that you always specify MAX > when creating the list form parameter list as that will > ensure that the list form parameter list is always long > enough to hold whatever parameters might be specified on > the execute form. > > The part to be careful about is "If your program can tolerate this". Maybe > you have embedded within a structure; maybe your program has a highly limited > amount of dynamic storage available. Those could be cases where you cannot > "tolerate this". > > Peter Relson > z/OS Core Technology Design > > > ---------------------------------------------------------------------- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to [email protected] with the message: INFO IBM-MAIN ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
