We must stash the error correctly when nesting evals, oops :x
open my $fh, '>', $f or die "failed to open $f: $!\n";
flock($fh, LOCK_EX) or die "LOCK_EX failed on $f: $!\n";
eval 'use Inline C => $vfork_spawn';
open my $fh, '>', $f or die "failed to open $f: $!\n";
flock($fh, LOCK_EX) or die "LOCK_EX failed on $f: $!\n";
eval 'use Inline C => $vfork_spawn';
flock($fh, LOCK_UN) or die "LOCK_UN failed on $f: $!\n";
flock($fh, LOCK_UN) or die "LOCK_UN failed on $f: $!\n";
};
if ($@) {
warn "Inline::C failed for vfork: $@\n";
};
if ($@) {
warn "Inline::C failed for vfork: $@\n";