on v5.10 Linux I get: Name "blah::a" used only once: possible typo at -e line 1. but I don't on v5.26 Windows :)
That'd be this change in v5.20: $a and $b warnings exemption
All I can say is that with B::Deparse the package prefix seems to be removed
True, although that's with the error still happening, I'm not sure if the deparse can be trusted in that case. It looks a little different without strict vars:
$ perl -MO=Deparse -wMstrict=refs,subs -e 'BEGIN { *::x=\$a } $x++'
BEGIN { $^W = 1; }
use strict 'refs', 'subs';
sub BEGIN {
*x = \$a;
}
++$x;
-e syntax OK