Subject: | [PATCH] Fails on perl <= 5.18.4 |
The bug is actually in the newer perls, they do not issue a warning where a warning always was due but during the transition from 5.18 to 5.20 it got lost. This has been reported to perlbug as https://rt.perl.org/Ticket/Display.html?id=130546
The warning can be averted with the attached patch, basically just replace '@' with '$' in the following line:
delete @parms{$_} for keys %$permitted;
HTH&&Thanks,
Subject: | patch-DTT-2017.109.diff |
--- lib/Data/Table/Text.pm~ 2017-01-12 12:33:02.196992356 +0000
+++ lib/Data/Table/Text.pm 2017-01-12 12:33:26.624904891 +0000
@@ -300,7 +300,7 @@
sub checkKeys($$)
{my ($test, $permitted) = @_; # The hash to test, the permitted keys and their meanings
my %parms = %$test;
- delete @parms{$_} for keys %$permitted;
+ delete $parms{$_} for keys %$permitted;
return '' unless keys %parms; # Success - all the keys in the test hash are permitted
confess join "\n", # Failure - explain what went wrong