I have a Perl file like this:
use strict;
f1();
sub f3()
{ f2(); }
sub f1()
{}
sub f2()
{}
In short, f1
is called before it is d
You can completely avoid this issue by not using prototypes in the first place:
use strict;
f1();
sub f3 { f2() }
sub f1 {}
sub f2 {}
Don't use prototypes unless you know why you are using them:
This is all very powerful, of course, and should be used only in moderation to make the world a better place.