if ($protected) { local $SIG{INT} = 'IGNORE'; precious(); # no interrupts during this function } # previous handler (if any) restored #### my @foo = (0..9); print "[1] ", join('|', @foo), "\n"; local $foo[3] = 100; print "[2] ", join('|', @foo), "\n";