There are plenty of UTF-16 files with no BOM, and the spec explains how to deal with such files:
From wikipedia:
If the BOM is missing, the standard says that big-endian encoding should be assumed.
Therefore mIRC should be able to handle these files; how to detect them is an interesting question, but not really our concern. In other words, whether mIRC performs auto-detection or we have to tell it manually isn't really the issue. There needs to be a way to access these files.
I would consider it a bug if mIRC is unable to read non-BOM UTF-16 files given that it is supposedly "unicode compatible"-- at worst, it should be a feature suggestion. Perhaps a new switch on $read and its counterparts to specify file encodings (
which mIRC badly needs!) would help.
That said, this topic is totally tangential to binary vars, and we should open a separate discussion for the issue.