# New Ticket Created by  Bob Rogers 
# Please include the string:  [perl #52840]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=52840 >


   This is a prerequisite to removing the "user_stack" operations.
These ops can be found easily by adding:

        real_exception(interp, NULL, 1, "Stack op 'xyz' used.\n");

to the code in src/ops/stack.ops, running "make test", and seeing where
this error crops up.  The likeliest strategies for changing the code
are, where applicable:

   1.  Rewrite bsr/ret calling to use Parrot Calling Conventions,
i.e. by carving the relevant code out into a .sub of its own;

   2.  Keep bsr/ret calling, but arrange for each such internal
subroutine to use its own independent set of registers; and

   3.  Create a resizable array to use as an explicit stack via push and
pop operations.

   Macros that contain these ops may require different tactics.

                                        -- Bob Rogers
                                           http://rgrjr.dyndns.org/

Reply via email to