I have a perl module : abcUtil.pm which has a subroutine check :
package abc::abcUtil;
require "common.pl";
sub check {
..
PERL_DEBUG("");
# PERL_DEBUG is in common.pl
..
}
When I execute this , it works fine, But when i use this pm in another perl:
require "common.pl";
use abc::abcUtil;
sub func {
abc::abcUtil::check();
}
Here, if I call func(), I get this error :
"Undefined subroutine &abc::abcUtil::PERL_DEBUG .."
There are other direct occurrences of PERL_DEBUG in this perl file which are working fine.
What might be wrong ?
Thanks
--------------
I updated the code in the 2nd file as follows:
#require "common.pl";
use abc::abcUtil;
sub func {
abc::abcUtil::check();
}
Basically removed the use of common.pl.
Kept the abcUtil file as unchanged.
Now it worked. But I can't keep it this way as have to use this common file.
Is it some conflict due to the use of 'require "common.pl" ' in both the files?