I have asked this question before or searched and seen others ask - why am I getting the warning "Subroutine mySub redefined at ../lib/Common.pm line x"? and you always get the answer you declared the sub twice in the same code. I created this test package:
ENTIRE FILE ---------------
package Common;
use strict;
sub thisSubroutineIsNotDefinedAnywhereElse{
}
1;
ENTIRE FILE ---------------
and I USE this package from a perl script, which uses other packages, that use this package also, and I get the warning:
Subroutine ThisSubroutineIsNotDefinedAnywhereElse redefined at ../lib/Common.pm line 19.
I promise I did not declare this sub anywhere else. So is this caused by a circular reference? How can I go about tracking the cause of this warning down and fixing?