Subject: | Bleadperl GitLive-blead-2143-g09330df breaks Class-MOP-0.95 |
# Failed test 'no name for a coderef that's still compiling'
# at t/082_get_code_info.t line 38.
# Looks like you failed 1 test of 5.
t/082_get_code_info.t .....................
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/5 subtests
I can reproduce this failing test with all bleadperls beginning with
commit 09330df80caf214f375fcf0c04857347e3b17c69
Author: Zefram <zefram@fysh.org>
Date: Sun Sep 6 17:29:43 2009 +0200
Fix [perl #66970] Incorrect coderef in MODIFY_CODE_ATTRIBUTES
Attribute handlers being applied to a temporary CV has actually been
reported as a bug, #66970. The attached patch fixes the bug, by
changing the order in which things happen: attributes are now applied
after the temporary CV has been merged into the existing CV or has
otherwise been added to the appropriate GV.
The change breaks part of Attribute::Handlers. Part of A:H searches the
package to find the name of the sub to which a :ATTR attribute is being
applied, and the correct time at which to launch that search depends
crucially on the order in which the CV construction events occur. So
this patch also includes a change to A:H, to make it detect which way
things happen. The resulting A:H works either way, which is essential
for its dual-life nature.
I'll perlbug this in a minute so it is evident in two places.
Regards,