# New Ticket Created by Bob Rogers # Please include the string: [perl #56278] # in the subject line of all future correspondence about this issue. # <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=56278 >
From: "Patrick R. Michaud" <[EMAIL PROTECTED]> Date: Mon, 23 Jun 2008 21:33:43 -0500 On Mon, Jun 23, 2008 at 06:27:31PM -0500, Patrick R. Michaud wrote: > There appears to be a fundamental design problem in Parrot's > current implementation of :outer. The short summary is that > :outer("sub_name") doesn't provide sufficient specificity > to accurately resolve an outer sub. > [...] > Yet another approach would be to keep things as they are now, > but have :outer only refer to the closest (most recent) version > of a sub with that name. We still may have to be careful about > dealing with :multi subs, though, and it might be possible to craft > some HLL code where it's not possible to make this approach work. The attached patch implements this last approach, causing :outer('xyz') to refer to the most recently compiled sub named 'xyz', as opposed to always using the first one. This works as long as no other sub with the name 'xyz' is interposed between the true outer 'xyz' and the sub using the :outer('xyz') . . . I didn't actually try the patch, but this approach is sufficient for me. Thanks. -- Bob Rogers http://rgrjr.dyndns.org/