Yes, Swift only supports UTF-8 input (in any environment, not just Xcode). That assumption's woven through the compiler in a few ways, mainly assuming that some content can be copied directly from the source file into output, but supporting UTF-16 in particular would be tricky because of the 16-bit code units, which would require reworking the lexer quite a bit, which could affect parsing speed (but might not be significant).
Do you have a particular reason why it'd be useful to accept source files encoded as UTF-16?
I have one ancillary question: what is the purpose of the Xcode > Preferences > Text Editing > Default Text Encoding if using anything but UTF-8 may cause a problem?
Yeah, it'd be worth filing a bug against Xcode and/or Swift to make sure the error message is good. I suspect some of the null bytes from the source file are making it into the output unescaped somehow (UTF-16-encoded ASCII characters have all zeroes in the high byte).