No. It has nothing at all to do with importing names twice. Not convinced? Run this code:
#!/usr/bin/perl
use strict;
use warnings;
use File::Basename (); # Not calling import!
BEGIN {delete $INC{"File/Basename.pm"}};
use File::Basename (); # Not calling import!
__END__
Subroutine fileparse_set_fstype redefined at /usr/lib/perl5/lib/5.8.6/
+File/Basename.pm line 157.
Subroutine fileparse redefined at /usr/lib/perl5/lib/5.8.6/File/Basena
+me.pm line 171.
Subroutine basename redefined at /usr/lib/perl5/lib/5.8.6/File/Basenam
+e.pm line 238.
Subroutine dirname redefined at /usr/lib/perl5/lib/5.8.6/File/Basename
+.pm line 251.
Can we now please stop this myth that redefining subroutines has anything to do with import? |