Skip Menu |

This queue is for tickets about the Parse-Eyapp CPAN distribution.

Report information
The Basics
Id: 52650
Status: resolved
Priority: 0/
Queue: Parse-Eyapp

People
Owner: CASIANO [...] cpan.org
Requestors: KARASIK [...] cpan.org
Cc:
AdminCc:

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



Subject: Modification of a read-only value at Parse/Eyapp/Driver.pm
Modification of a read-only value attempted at /usr/local/perl/510/site/lib/Parse/Eyapp/Driver.pm line 670. This warning is triggered if the Parse::Eyapp::Driver is executed f.ex. inside a "for qw(1) {}" loop, which aliases $_ to read-only values. The culprit line is $_ = $right[$i]; # The symbol which either needs to be changed from using $_ to something else, or $_ needs to be properly localized. perl v5.10.0
Many thanks Dmitri, Show quoted text
> culprit line is > > $_ = $right[$i]; # The symbol > > which either needs to be changed from using $_ to something else, or $_ > needs to be properly localized.
I have loaded to PAUSE version 1.148 of Parse::Eyapp. Following your instructions I have localized $_. Let me know if this fixes the bug. Best Casiano
Hi, Thanks for a quick response, but this doesn't fix the error. Now it just says line number 702, but the message is same. You're welcome to send me patches to dmitry@karasik.eu.org so I can try them before you upload new versions. /dk
Subject: Re: [rt.cpan.org #52650] Modification of a read-only value at Parse/Eyapp/Driver.pm
Date: Fri, 11 Dec 2009 09:34:38 +0000
To: bug-Parse-Eyapp [...] rt.cpan.org
From: Casiano Rodriguez-Leon <casiano [...] ull.es>
Hello, 2009/12/11 KARASIK via RT <bug-Parse-Eyapp@rt.cpan.org>: Show quoted text
>       Queue: Parse-Eyapp >  Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=52650 > > > Hi, > > Thanks for a quick response, but this doesn't fix the error. Now it just > says line number 702, but the message is same. You're welcome to send me > patches to dmitry@karasik.eu.org so I can try them before you upload new > versions.
I have localized now all uses of $_. What will be really really helpful and more dynamic will be if you checkout the parse-eyapp code at google-code and check the changes I introduce: svn checkout http://parse-eyapp.googlecode.com/svn/trunk/ parse-eyapp-read-only Let me know if this suits you Best Casiano
Subject: Re: [rt.cpan.org #52650] Modification of a read-only value at Parse/Eyapp/Driver.pm
Date: Fri, 11 Dec 2009 12:08:54 +0100
To: "casiano [...] ull.es via RT" <bug-Parse-Eyapp [...] rt.cpan.org>
From: Dmitry Karasik <dmitry [...] karasik.eu.org>
Show quoted text
> I have localized now all uses of $_. > What will be really really helpful and more dynamic will be if you > checkout the parse-eyapp code at google-code and check the changes I introduce: > > svn checkout http://parse-eyapp.googlecode.com/svn/trunk/ > parse-eyapp-read-only > Let me know if this suits you
That works fine, but I can't install the module: $ perl Makefile.PL Checking if your kit is complete... Warning: the following files are missing in your kit: lib/Parse/Eyapp.pod lib/Parse/Eyapp/Base.pod lib/Parse/Eyapp/datagenerationtut.pod lib/Parse/Eyapp/debuggingtut.pod lib/Parse/Eyapp/defaultactionsintro.pod lib/Parse/Eyapp/Driver.pod lib/Parse/Eyapp/eyappintro.pod lib/Parse/Eyapp/eyapplanguageref.pod lib/Parse/Eyapp/MatchingTrees.pod lib/Parse/Eyapp/Node.pod lib/Parse/Eyapp/Parse.pm lib/Parse/Eyapp/Parse.pod lib/Parse/Eyapp/Scope.pod lib/Parse/Eyapp/translationschemestut.pod lib/Parse/Eyapp/Treeregexp.pm lib/Parse/Eyapp/Treeregexp.pod lib/Parse/Eyapp/YATW.pod Please inform the author. Could not open 'lib/Parse/Eyapp.pod': No such file or directory at C:/strawberry /perl/lib/ExtUtils/MM_Unix.pm line 2588. -- Sincerely, Dmitry Karasik
CC: dmitry [...] karasik.eu.org
Subject: Re: [rt.cpan.org #52650] Modification of a read-only value at Parse/Eyapp/Driver.pm
Date: Fri, 11 Dec 2009 11:25:58 +0000
To: bug-Parse-Eyapp [...] rt.cpan.org
From: Casiano Rodriguez-Leon <casiano [...] ull.es>
Dmitri, This is because the pods are derived. You have to build the pods first: pp2@nereida:/tmp/parse-eyapp-read-only$ make -f makepods yapp -n -m 'Parse::Eyapp::Parse' -o 'lib/Parse/Eyapp/Parse.pm' lib/Parse/Eyapp/Parse.yp PERL5LIB=lib; eyapp -n -m 'Parse::Eyapp::Parse' -o 'lib/Parse/Eyapp/Parse.pm' lib/Parse/Eyapp/Parse.yp PERL5LIB=lib; perl eyapp -v -n -m Parse::Eyapp::Treeregparser -o lib/Parse/Eyapp/Treeregexp.pm lib/Parse/Eyapp/Treeregexp.yp rm -fR Parse-Eyapp-*.tar.gz cd tt2; tpage Eyapp.tt2 > ../lib/Parse/Eyapp.pod cd tt2; tpage Base.tt2 > ../lib/Parse/Eyapp/Base.pod cd tt2; tpage datagenerationtut.tt2 > ../lib/Parse/Eyapp/datagenerationtut.pod cd tt2; tpage debuggingtut.tt2 > ../lib/Parse/Eyapp/debuggingtut.pod cd tt2; tpage defaultactionsintro.tt2 > ../lib/Parse/Eyapp/defaultactionsintro.pod cd tt2; tpage Driver.tt2 > ../lib/Parse/Eyapp/Driver.pod cd tt2; tpage eyappintro.tt2 > ../lib/Parse/Eyapp/eyappintro.pod cd tt2; tpage eyapplanguageref.tt2 > ../lib/Parse/Eyapp/eyapplanguageref.pod cd tt2; tpage MatchingTrees.tt2 > ../lib/Parse/Eyapp/MatchingTrees.pod cd tt2; tpage Node.tt2 > ../lib/Parse/Eyapp/Node.pod cd tt2; tpage Parse.tt2 > ../lib/Parse/Eyapp/Parse.pod cd tt2; tpage Scope.tt2 > ../lib/Parse/Eyapp/Scope.pod cd tt2; tpage TokenGen.tt2 > ../lib/Parse/Eyapp/TokenGen.pod cd tt2; tpage translationschemestut.tt2 > ../lib/Parse/Eyapp/translationschemestut.pod cd tt2; tpage Treeregexp.tt2 > ../lib/Parse/Eyapp/Treeregexp.pod cd tt2; tpage YATW.tt2 > ../lib/Parse/Eyapp/YATW.pod As you see, you need to have installed the Template toolkit and Parse::Yapp See perldoc Makefile.PL for more instructions. Best Casiano 2009/12/11 Dmitry Karasik via RT <bug-Parse-Eyapp@rt.cpan.org>: Show quoted text
>       Queue: Parse-Eyapp >  Ticket <URL: http://rt.cpan.org/Ticket/Display.html?id=52650 > >
>> I have localized now all uses of $_. >> What will be really really helpful and more dynamic will be if you >> checkout the parse-eyapp code at google-code and check the changes I introduce: >> >>    svn checkout http://parse-eyapp.googlecode.com/svn/trunk/ >> parse-eyapp-read-only >> Let me know if this suits you
> > That works fine, but I can't install the module: > > $ perl Makefile.PL > Checking if your kit is complete... > Warning: the following files are missing in your kit: >        lib/Parse/Eyapp.pod >        lib/Parse/Eyapp/Base.pod >        lib/Parse/Eyapp/datagenerationtut.pod >        lib/Parse/Eyapp/debuggingtut.pod >        lib/Parse/Eyapp/defaultactionsintro.pod >        lib/Parse/Eyapp/Driver.pod >        lib/Parse/Eyapp/eyappintro.pod >        lib/Parse/Eyapp/eyapplanguageref.pod >        lib/Parse/Eyapp/MatchingTrees.pod >        lib/Parse/Eyapp/Node.pod >        lib/Parse/Eyapp/Parse.pm >        lib/Parse/Eyapp/Parse.pod >        lib/Parse/Eyapp/Scope.pod >        lib/Parse/Eyapp/translationschemestut.pod >        lib/Parse/Eyapp/Treeregexp.pm >        lib/Parse/Eyapp/Treeregexp.pod >        lib/Parse/Eyapp/YATW.pod > Please inform the author. > Could not open 'lib/Parse/Eyapp.pod': No such file or directory at C:/strawberry > /perl/lib/ExtUtils/MM_Unix.pm line 2588. > > -- > Sincerely, >        Dmitry Karasik > > >
Solved in Parse-Eyapp-1.149