BEGIN { no scope; # previous nested lexical scope boundary erased require Config; if ($Config::Config{archname} =~ /i186/) { no scope; # previous nested lexical scope boundary erased use integer; no warnings qw/numeric/; use warnings qw/FATAL overflow/; } } This is only slightly more disgusting than upscope. And it doesn't allow an unrelated/non-nested scope to be pierced, such as a do()ne file. --tomThread Next