use_ok() inside a BEGIN block, so functions are exported at
compile-time and prototypes are properly honored.
That is, instead of writing this:
use_ok( 'Some::Module' );
use_ok( 'Other::Module' );
One should write this:
BEGIN { use_ok( 'Some::Module' ); }
BEGIN { use_ok( 'Other::Module' ); }
However, people often either forget to add BEGIN, or mistakenly group
use_ok with other tests in a single BEGIN block, which can create subtle
differences in execution order.
With this module, simply change all use_ok in test scripts to use ok,
and they will be executed at BEGIN time. The explicit space after use
makes it clear that this is a single compile-time action.