http://www.perlmonks.org?node_id=774891

NodeReaper has asked for the wisdom of the Perl Monks concerning the following question:

This node falls below the community's threshold of quality. You may see it by logging in.

Replies are listed 'Best First'.
Re: Exception error in perl code
by Anonymous Monk on Jun 26, 2009 at 03:34 UTC
Re: Exception error in perl code
by grep (Monsignor) on Jun 26, 2009 at 15:15 UTC
    Ok - let's look at the information you're given.
    Uncaught exception from user code: Day '0' out of range 1..31 Line 405 in the program points to "return timelocal(0, 0, 0, @dmy) / ( +24 * 60 * 60);

    So where you would look is that line and it involves something about the day being 0 and not in the range of 1..31. If you look at the docs for Time::Local the example for timelocal looks like this.

    $time = timelocal($sec,$min,$hour,$mday,$mon,$year);

    $mday is the 4th item. So it in your array @dmy. So that is where you want to look. Use Data::Dumper to print the value of @dmy right before the offending line.

    use Data::Dumper; print Dumper \@dmy; return timelocal(0, 0, 0, @dmy) / (24 * 60 * 60);
    grep
    One dead unjugged rabbit fish later...