$^W variable (documented in the perlvar manpage) controls runtime warnings for a block:
{
local $^W = 0; # temporarily turn off warnings
$a = $b + $c; # I know these might be undef
}
Note that like all the punctuation variables, you cannot currently use
my on $^W, only local.
A new use warnings pragma is in the works to provide finer control over all this. The curious
should check the perl5-porters mailing list archives for details.