Consider the following code: my $data = 'x' x 1024; my $file = '/dev/full'; open my $out, '>:encoding(UTF-8)', $file or die "Error: can't open '$file' for writing: $!\n"; print $out $data or die "Error: writing to file '$file': $!\n"; close $out or die "Error: closing file '$file': $!\n"; It runs without error, which I find surprising and disturbing. Changing the open line to open my $out, '>', $file gives the error I expect: Error: closing file '/dev/full': No space left on device Is this a bug or do I have unrealistic expectations? An strace shows that in both cases, the OS is returning an error: write(4, "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"..., 1024) = -1 ENOSPC (No space left on device) -- Justice is when you get what you deserve. Law is when you get what you pay for.Thread Next