So command.com doesn't glob:
C:\WINDOWS>perl -e "print qq(@ARGV)" *.txt
Under Unixes, of course, you get "foo.txt bar.txt" etc. (Or you get an error: "No match".)
What does Cygwin do? And cmd.exe? Notably, is it safe for a program to assume that if $^O eq "MSWin32", @ARGV needs to be fed thru glob()?