... use if ($^O =~ m/MSWin32/i || ''), 'Win32'; ... my $is_win32 = $^O =~ m/MSWIN32/i; ... sub test_file { my $file = ucx(shift); ... } sub ucx { my $fn = shift; return $is_win32 ? Win32::GetANSIPathName($fn) : decode('utf8', $fn); }