Skip Menu |

This queue is for tickets about the HTML-Embperl CPAN distribution.

Report information
The Basics
Id: 64991
Status: open
Priority: 0/
Queue: HTML-Embperl

People
Owner: Nobody in particular
Requestors: davem [...] iabyn.com
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: GvCV and GvGP lvalue changes in perl core
Date: Fri, 21 Jan 2011 16:20:18 +0000
To: bug-HTML-Embperl [...] rt.cpan.org
From: Dave Mitchell <davem [...] iabyn.com>
Hi, A search of sources on CPAN shows that your module(s) use GvCV() and/or GvGP() in an lvalue context (i.e. you assign to it). From perl 5.13.10 onwards, this will no longer be allowed, and you'll need to update your source code in such a way as to be compatible with both existing and the new perls. Probably the easiest way to do this is to add the following definitions: #ifndef GvCV_set # define GvCV_set(gv,cv) (GvGP(gv)->gp_cv = (cv)) #endif #ifndef GvGP_set # define GvGP_set(gv,gp) ((gv)->sv_u.svu_gp = (gp)) #endif then replace code like the following: GvGP(gv) = gp; GvCV(gv) = cv; with GvGP_set(gv, gp); GvCV_set(gv, cv); If you do something like SAVEGENERICSV(&(GvCV(gv))) then you may need to replace it with a custom SAVEDESTRUCTOR() or similar that does a GvCV_set(gv,old_value) upon restoration.
Subject: Re: [rt.cpan.org #64991] AutoReply: GvCV and GvGP lvalue changes in perl core
Date: Fri, 21 Jan 2011 17:34:12 +0000
To: Bugs in HTML-Embperl via RT <bug-HTML-Embperl [...] rt.cpan.org>
From: Dave Mitchell <davem [...] iabyn.com>
On Fri, Jan 21, 2011 at 11:20:26AM -0500, I wrote: Show quoted text
> # define GvCV_set(gv,cv) (GvGP(gv)->gp_cv = (cv))
[snip] Show quoted text
> # define GvGP_set(gv,gp) ((gv)->sv_u.svu_gp = (gp))
Actually on reflection, those could be better written as: #define GvCV_set(gv, cv) (GvCV(gv) = (cv)) #define GvGP_set(gv, gp) (GvGP(gv) = (gp)) -- Indomitable in retreat, invincible in advance, insufferable in victory -- Churchill on Montgomery
Subject: RE: [rt.cpan.org #64991] AutoReply: GvCV and GvGP lvalue changes in perl core
Date: Fri, 21 Jan 2011 19:28:45 +0100
To: bug-HTML-Embperl [...] rt.cpan.org
From: richter [...] ecos.de
Hi Dave, HTML-Embperl is replaced by Embperl and is not maintained anymore (it will already fail on Perl 5.8 and 5.10) Regards Gerald Show quoted text
> -----Original Message----- > From: Dave Mitchell via RT [mailto:bug-HTML-Embperl@rt.cpan.org] > Sent: Friday, January 21, 2011 6:34 PM > Subject: Re: [rt.cpan.org #64991] AutoReply: GvCV and GvGP lvalue changes > in perl core > > Queue: HTML-Embperl > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=64991 > > > On Fri, Jan 21, 2011 at 11:20:26AM -0500, I wrote:
> > # define GvCV_set(gv,cv) (GvGP(gv)->gp_cv = (cv))
> [snip]
> > # define GvGP_set(gv,gp) ((gv)->sv_u.svu_gp = (gp))
> > Actually on reflection, those could be better written as: > > #define GvCV_set(gv, cv) (GvCV(gv) = (cv)) > #define GvGP_set(gv, gp) (GvGP(gv) = (gp)) > > > -- > Indomitable in retreat, invincible in advance, insufferable in victory > -- Churchill on Montgomery