Subject: | New pair* functions do not work on perl 5.8.9 or 5.10.0 |
On 5.8.9 or 5.10.0 the return value seems to still have the CODE block in it as well:
# Failed test 'pairmap list'
# at t/pair.t line 40.
# Structures begin differing at:
# $got->[0] = CODE(0x1774090)
# $expected->[0] = 'ONE'
# Failed test 'pairmap list returning >2 items'
# at t/pair.t line 44.
# Structures begin differing at:
# $got->[0] = CODE(0x17742a0)
# $expected->[0] = 'one'
Attempt to free unreferenced scalar: SV 0x17c3860, Perl interpreter: 0x15c4010 at t/pair.t line 48.
Attempt to free unreferenced scalar: SV 0x17b5d50, Perl interpreter: 0x15c4010 at t/pair.t line 48.
Attempt to free unreferenced scalar: SV 0x17c3980, Perl interpreter: 0x15c4010 at t/pair.t line 48.
# Failed test 'pairmap pads with undef'
# at t/pair.t line 48.
# Structures begin differing at:
# $got->[0] = CODE(0x17745d0)
# $expected->[0] = '1'
t/pair.t ................
Failed 8/17 subtests
Since it works in 5.10.1 onwards, up to latest perl, it only seems to affect this very old and long-EOL'ed set of builds. I'm therefore not going to put any effort in currently to fix it, but if anyone has any insight or wants it fixed that old, I can take a look.
--
Paul Evans