I don't understand what you are saying, and your code doesn't contradicts anything I said.
>perl -Mstrict -le"{ package PKG; $foo=1; }"
Global symbol "$foo" requires explicit package name at -e line 1.
Execution of -e aborted due to compilation errors.
>perl -Mstrict -le"{ package PKG; no strict 'vars'; $foo=1; } print fo
+r grep /foo/, keys %main::"
>perl -Mstrict -le"{ package PKG; our $foo=1; } print for grep /foo/,
+keys %main::"
>perl -Mstrict -le"{ package PKG; no strict 'vars'; $foo=1; } print fo
+r grep /foo/, keys %PKG::"
foo
>perl -Mstrict -le"{ package PKG; our $foo=1; } print for grep /foo/,
+keys %PKG::"
foo
|