BEGIN { if (@ARGV && $ARGV[0] eq '--fixed') { shift(@ARGV); } else { $ENV{PATH} = join ':', '/mypath/perl/bin', $ENV{PATH}; delete $ENV{PERL5LIB}; exec '/mypath/perl/bin/perl', $0, '--fixed', @ARGV; die ...; } }