I can't reproduce your results with 5.8?
P:\test>perl58 -le"$_ = pack 'C*', 0x7f .. 0x81; print length, qq[ : '
+$_' ]"
3 : '⌂Çü'
How are you verifying the contents of the string?
Examine what is said, not who speaks.
"Efficiency is intelligent laziness." -David Dunham
"When I'm working on a problem, I never think about beauty. I think only how to solve the problem. But when I have finished, if the solution is not beautiful, I know it is wrong." -Richard Buckminster Fuller
If I understand your problem, I can solve it! Of course, the same can be said for you.