# das hier hat einen lokalen Geltungsbereich, und zwar den der aktuellen Datei, # weil es in keinem Block steht use warnings; my $x = undef; if( 1 ) { # gilt nur bis zum ende des Blockes, oder bis zum naechsten use warnings no warnings; print "X1 = $x\n"; # gilt bis zum Ende des Blockes, oder bis zum naechsten no warnings use warnings; print "X2 = $x\n"; } danach gilt wieder der vorherige status ausserhalb des blocks