On Tue, 16 Dec 2025 21:54:26 +0100, Radoslaw Skorupka <[email protected]>
wrote:
>This is really weird and it breaks SMP/E logic.
It doesn't break the SMP/e logic. Understand that SMP/e uses utilities. In this
case, binder / linkedit. You must understand how SMP/e works together with
BINDER.
>Actually the most important for me is to *understand* the issue.
This is simple to understand when you compare how you use binder versus SMP/e.
1. You bind objects into a load module using includes. The load module is
completely empty and completely built by what is included.
INCLUDE OBJECT1
INCLUDE OBJECT2
NAME PROGRAM1
2. SMP/e can't do this because your target (not dist) libraries don't have any
object (csect) libraries. They do not exist. Instead, SMP/e tells the binder to
include the program first because it contains the current version of all the
objects (csects).
INCLUDE LINKLIB( IEBGENER )
REPLACE IEBaaa
INCLUDE IEBaaa
NAME IEBGENER
3. Realize that REPLACE is for a CSECT name and INCLUDE is for an object that
contains 1 or more csects. The developer has to tell SMP/e the csects contained
in an object but if they get it wrong, then problems can occur.
INCLUDE LINKLIB( IEBGENER )
REPLACE IEBaaa1
REPLACE IEBaaa2
INCLUDE IEBaaa
NAME IEBGENER
Notice we told SMP/e that object IEBaaa contains csect IEBaaa1 and IEBaaa2 but
does not contain csect IEBaaa. This is acceptable.
4. Realize that REPLACE actually means delete the specified csect currently in
storage. If you don't REPLACE (delete) IEBaaa1, then it won't be updated from
object IEBaaa and will be the old version.
Looking at your V2 output which applies FMID & PTFs at the same time:
IEW2322I 1220 154 INCLUDE SMPWRK3(BAZGPSAC) UW95965 SEQ # 000006
IEW2322I 1220 155 SETSSI 01115965
IEW2322I 1220 156 NAME BAZGPSAC(R)
We only see 1 INCLUDE. We can easily conclude that object BAZGPSAC from UW95965
REPLACEs all csects known to SMP/e for this load module. We also know that
multiple csects are in object BAZGPSAC because you specified NCAL and the
module size is different by thousands of bytes, One or more PTFs (and FMID)
prior to UW95965 has csects not in this PTF.
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN