prefer $@ for eval errors
[sheet.git] / browser.plp
index d8ebf86e318ce8e85bddc26e43f7734d6842db35..375f3005ea468568f0b04f1ced14f46be1b128c4 100644 (file)
@@ -2,6 +2,7 @@
 use 5.010;
 use utf8;
 use List::Util qw(sum max first);
+no if $] >= 5.018, warnings => 'experimental::smartmatch';
 
 Html({
        title => 'browser compatibility cheat sheet',
@@ -21,7 +22,7 @@ Html({
 
 say "<h1>Browser compatibility</h1>\n";
 
-my $caniuse = do 'data/browser/support.inc.pl' or die $! || $@;
+my $caniuse = do 'data/browser/support.inc.pl' or die $@ || $!;
 $_->{verrelease} = {
        # mark last three (future) versions as unreleased, ensure current isn't
        map {
@@ -98,7 +99,7 @@ given ($get{usage} // 'wm') {
                        'identifier must be alphanumeric name or <q>0</q>';
        }
        $canihas = do "data/browser/usage-$_.inc.pl" or do {
-               printf "<p>Browser usage data not found: <em>%s</em>", $! || $@;
+               printf "<p>Browser usage data not found: <em>%s</em>", $@ || $!;
                break;
        };
        $usage = $_;
@@ -268,8 +269,8 @@ sub featurescore {
                if ($canihas) {
                        while (my ($browser, $versions) = each %$row) {
                                ref $versions eq 'HASH' or next;
-                               while (my ($version, $_) = each %$versions) {
-                                       $rank += ($canihas->{$browser}->{$version} || .001) * $PSTATS{$_};
+                               while (my ($version, $status) = each %$versions) {
+                                       $rank += ($canihas->{$browser}->{$version} || .001) * $PSTATS{$status};
                                }
                        }
                        return $rank;