in reply to yet another sort issue

In both examples you use strings as qw(1 2) means a list of strings. To have a list of numbers use (1, 2). By the way on my system I don't get any warning of that kind with any of the possibillities and I have a 5.8.0 on a cygwin system.