The commit f9258de makes newframe AvREAL_only (= AvREIFY_off + AvREAL_on) explicitly.
(C) 2e5392a
Use version->declare syntax; otherwise we'll get:
❯ XSLATE=xs perl -Mblib -MText::Xslate -e1
Text::Xslate object version v3.4.0 does not match bootstrap parameter 3.4.0 at /Users/skaji/env/plenv/versions/5.8.5/lib/perl5/5.8.5/darwin-2level/DynaLoader.pm line 253.
This PR improves perl 5.8 support.
(A) 34d26b1
Currently Xslate cannot be built on perl 5.8 with Devel::PPPort 3.33+. This commit will fix this. See also https://github.com/mhx/Devel-PPPort/issues/42
(B) f9258de
Currently t/900_bugs/030_issue71.t fails on perl 5.8.
In recent perl, SvUPGRADE(av, SVt_PVAV) makes the av AvREAL_only, so that av_fill() frees deleted elements. https://github.com/Perl/perl5/blob/v5.26.1/sv.c#L1357 https://github.com/Perl/perl5/blob/v5.26.1/av.c#L860-L865
On the other hand, in perl 5.8, SvUPGRADE(av, SVt_PVAV) does NOT make the av AvREAL_only, so that av_fill() does NOT free deleted elements, and it implies memory leaks. https://github.com/Perl/perl5/blob/perl-5.8.5/sv.c#L1462-L1476 https://github.com/Perl/perl5/blob/perl-5.8.5/av.c#L767-L772
The commit f9258de makes
newframe
AvREAL_only (= AvREIFY_off + AvREAL_on) explicitly.(C) 2e5392a
Use version->declare syntax; otherwise we'll get: