http://www.perlmonks.org?node_id=429872


in reply to Re^2: What happens when you load the same module twice?
in thread What happens when you load the same module twice?

Because calling 'use File::Basename();' tells the compiler to import an empty list -- in other words, do not import anything. The issue at hand is that File::Basename and File::Basename are both trying to import subroutines into the main:: namespace by default.