On Sep 28, 2006, at 9:53 AM, John Peacock wrote:

John Peacock wrote:
Ahhh, it is this code from CPAN.pm (being these are lines 4 and 5):
    $CPAN::VERSION = '1.8801';
    $CPAN::VERSION = eval $CPAN::VERSION;

OK, I have it sussed out, but I'm not sure how to fix it yet for the general case. The issue only comes up when you use fully- qualified $Package::VERSION assignments because of the way that Module::Build::ModuleInfo is coded.

Probably the first step is to add a failing test case to t/ moduleinfo.t, would that be fairly easy?


2) the second line is scanned and eval'd *in isolation* and cannot access the previous line's assignment, so it both fails to "eval" and also notes that the $VERSION has already been assigned.

My understanding was that the second line shouldn't be scanned at all, because we already have a $VERSION variable set from the first line.

 -Ken



Reply via email to