Consider the test program
#!usr/bin perl -w
use strict;
if ("1" eq "2") {
print hello();
}
sub helloBROKEN {
print "hello world\n";
}
This program will actually compile and run without error. If I remove the if ("1" eq "2") condition then I get an error saying that the subroutine does not exist.
I would like for perl to warn me whenever I refer to a subroutine which does not exist.
Does this behavior indicate that perl is only checking my subroutine references at runtime? Is there any way to force perl to check my subroutine references at compile time?