In a recent note, Edward Jaffe said: > Date: Sun, 30 Jul 2006 15:04:01 -0700 > > Hallelujah!!! Happy days!! But ... wait! Was I prescient? The name I've > been assigning for 20 years to this "user defined" symbol is *exactly* > the same as that chosen by IBM for the "official" symbol. I now have > literally dozens of programs that won't compile. They receive a > "Previously defined symbol" error from the assembler! > Prescient? Only in a sense. In retrospect, you've probably mused that you invited trouble by using, fairly deliberately, a prefix ("S99") that IBM had informally staked out. But we all do it: some years back IBM introduced a hardware instruction that we had used as a macro name. (We OPSYNed it away; we didn't need it. And IIRC we had to do a little dance of defining it before we undefined it because the assembler, contrary to expectation, allows redefining an opcode previously defined, but not undefining an opcode previously undefined.)
But IBM laid the trap by not providing the service to customers of partitioning the namespace, "Ours" and "Theirs". They provide a registry of module prefixes; this should be generalized to other symbols. 45 years ago an IBM assembler provided a HED pseudo-op which implicitly qualified symbols in a range of statements. This was a variant of name scoping; I don't know whether it would have helped in this case. > I'm not complaining. I'm editing. Consider yourselves forewarned... > Despite the "dozens" of errors, do you need to do anything more than delete the single definition in your macro? It appears that the definitions are equivalent. -- gil -- StorageTek INFORMATION made POWERFUL ---------------------------------------------------------------------- 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