I tried to apply Bram's patch from last year, but it had a lot of fuzz
(especially related to the removal of register stacks). Here's what I ended
up with.
It doesn't work, so I'm not applying it as it is... but if there's still a
problem, this might be a better starting point.
-- c
=== incl
I'm almost done with a different patch that preserves the parent context for
the purpose of returning values into it. All further tailcalled contexts
are freed as normal. That's pretty vague, but it's easier just to see the
code. I just haven't had time to finish and release it.
Thanks,
Alek S
Bram Geron (via RT) wrote:
Tail calls from within v-table methods are broken, the tail-called sub
(or method) will not return correct values.
When method A tailcalls sub B, B's set_returns stores its opcode
number (and with it, which registers should be returned), but the
low-level vtable code g
# New Ticket Created by Bram Geron
# Please include the string: [perl #41583]
# in the subject line of all future correspondence about this issue.
# http://rt.perl.org/rt3/Ticket/Display.html?id=41583 >
---
osname= linux
osvers= 2.6.18.3
arch= i486-linux-gnu-thread-multi
cc= cc
---
Flag