Actually, according to the docs: If no "unimport" method can be found the call fails with a fatal error., so this should fail:
$ perl -e ' *UNIVERSAL::import = sub { print "Whoops!" }; my $x = bless {}, 'Foo'; $x->import; no Foo'
Except it doesn't fail. This appears to be misdocumented. If you use strict, you'll get a baredword warning, but that's still not what the docs say. Am I misreading?
Further, I think the symbol table entries should not be autovivified. If you're doing some funky work walking the symbol table, those 'faux' entries could cause bad results. I don't like it. Nosireebob. I don't.
Cheers,
Ovid
Update: Added the word 'not'. Kinda changes the meaning, doncha think? :)
Update 2: I submitted a POD patch to P5P, but Abigail beat me to it.
Join the Perlmonks Setiathome Group or just click on the the link and check out our stats.
In reply to Hey...two bugs in Perl from one node?
by Ovid
in thread import() magic
by ferrency
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |