Ira Broussard wrote:
I understand the linkage editor can split a record anywhere it wants. However, why does that cause a problem if I am concatenating all of the records for a load module into a single variable and scanning that variable? For example... searcharea = ""
do until EOF
   read record into newrecord
   searcharea = searcharea || newrecord
end
scan searcharea
I haven't done exhaustive testing, but the testing I did shows that the result is what I expected (including when the records had an odd number of bytes, e.g., not on a fullword boundary). If my search string was split across the previous record and the new record, it is correctly "un-split" in the concatenated storage area.

There is a little problem with your scheme. A load module contains control records and text records. Disregarding modules with the "Only Loadable" and "Scatter Load" attributes, each text record is preceded by at least one control record. To identify split strings, you need to examine the record type and not store the control data.

And if you ever consider using something similar to compare load modules, you need to be aware that depending on the sequence of events during linking/binding the module, CSECTs need not appear in the same order in functionally identical modules.

Gerhard Postpischil
Bradford, VT

new e-mail address: gerhardp (at) charter (dot) net

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to