John Gilmore commented on Tom Marchant's query:
> > Tom Marchant wrote:

> > <begin snippet>
> > I might go so far as to contend that whenever a macro alters registers
1, 14, or 15 it should issue a drop for those registers if there is an
active using.  Unfortunately, AFAIK, there is no way to do this.
> > </end snippet>

> Fortunately, in my view, he is quite right that there is no way to do
this.

This technique sometimes works:

        PUSH    USING           Save current USINGs
        DROP    ,               Drop all registers
        - - -                   Call the ill-behaved macro
        POP     USING           Restore original USINGs

If the ill-behaved macro requires local addressability, establish a local
base register;  it will be DROPped automatically by the POP USING.

Reply via email to