Steve Comstock wrote: <begin extract> Neither version is bullet proof, but Ed's works in both cases of a label supplied or not (neither of which is an error, so 'bullet proofing' for a missing label is really irrelevant). </end extract>
and this---Let me quote him---is Nonsense! When someone writes a macro definition he or she is free to make the omission of or a putatively inappropriate value of any symbolic parameter an error, as I did with the skeletal sample lines that tested for the presence or absence of a label in the DIAG macro instruction. In general the omission of a label may be innocuous in one context and a severe error in another, in the judgment of the writer of a particular macro instruction. Bullet proofing is never irrelevant. It is tedious, certainly; but the only appropriate stance for the writer of a production macro definition is that those who write macro instructions that use it will be ignorant, malicious or perhaps both. Ed Jaffe's point is more substantial; but, as he well knows, there are simple ways to guard against the difficulty he raised. Indeed, there are alternative ways to induce the assembler to do the necessary arithmetic without resort to the magic numbers 3 and 4, which still seem to me to be ugly. I do not at all mind being ganged up upon. Let's do it again sometime soon. John Gilmore, Ashland, MA 01721 - USA
