develooper Front page | perl.perl5.porters | Postings from February 2018

Fwd: Re: [perl #132788] Blead Breaks CPAN:LEMBARK/Object-Trampoline-1.42.tar.gz

February 17, 2018 02:53
Fwd: Re: [perl #132788] Blead Breaks CPAN:LEMBARK/Object-Trampoline-1.42.tar.gz
Message ID:
I accidentally sent this response only to Zefram.... Resend
---------- Forwarded message ----------
From: "demerphq" <>
Date: 16 Feb 2018 15:48
Subject: Re: [perl #132788] Blead Breaks CPAN:
To: "Zefram" <>

> On 30 Jan 2018 15:13, "Zefram" <> wrote:
> wrote:
> >The test t/03-Universal-Override.t in Object-Trampoline-1.42
> >fails with 5.27.7 and 5.27.8, and was OK until 5.27.6:
> Bisects to commit 915a6810d3e3198d759f025f85d1fd6f3171dd27 "Carp: optimize
> format_arg when arguments contain many references".  The issue is that
> the new Carp code in that commit refers to $UNIVERSAL::isa::VERSION, and
> so vivifies $UNIVERSAL::{"isa::"}.  The test iterates over %UNIVERSAL::,
> using each key found as a method name, and isn't prepared for there to
> be a key that doesn't syntactically behave as a method name.
> The test is erroneous in using all keys it finds as method names.
> It should skip ones that aren't syntactically OK.
> The edit to Carp is also arguably faulty.  In other areas Carp goes
> to significant effort to avoid vivifying stash entries that it doesn't
> intend to.  It should probably apply similar logic in this search for
> &UNIVERSAL::isa.
> I don't think such restrictions are tenable. They mean that in some cases
> you can use Carp to trigger c stack overflow and thus a segv. I will soon
> be pushing patches that fix this and they will almost certainly result in
> loading modules and modifying stash entries.
> It is unfortunate that so many critical functions and checks in Perl
> require namespace mutations, but that's how things work, and imo not
> touching other namespaces has a *much* lower priority than Carp working
> correctly and not segfaulting.
> Yves
> Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About