The only real problem with this code snippet is that it is not properly encoded.
If you paste it into an empty document and save with "default encoding" (which is Windows-something) then it fails to compile on my machine, too. However, if you save the exact same file with UTF-8 encoding, all is fine.
This makes sense, too, since gcc uses UTF-8 as default encoding (unless told otherwise), and ět in Windows-something is not valid in UTF-8.
The only thing that is not quite right about it is that gcc does not report this as "illegal sequence" but simply fails silently, outputting an emtpy object file (which of course misses the WinMain function, as the linker correctly complains about).
Regarding main/WinMain, much to everybody's surprise MinGW is smart enough to wrap up everything so it still works, even if you use main instead of WinMain for a Windows application. The only obvious disadvantage is that you don't have easy access to hInstance and hPrevInstance, but they can be queried if needed (and who needs them anyway).