The thread inaccurately describes the limitation of these special names being on the "OS level" -- it's actually one layer down, in the DOS and Win32 subsystems. Windows NT doesn't throw fits about these file names if the subsystem you run under (see: POSIX, LXSS, OS/2) doesn't care about them. Cygwin can even override the Win32 behavior by just passing all its file handlers through the native NT API instead of the Win32 API.