Character encoding
CPO files must be encoded in UTF-8 (or pure ASCII which is a subset of UTF-8).
Non-ASCII characters can be used only in comments or in identifiers. If an identifier contains a non-ASCII character then the whole identifier must be enclosed in double quotes (see generic identifiers).
Note that CP Optimizer does not do any kind decoding, recoding or checking of UTF-8 characters. If the file contains invalid UTF-8 characters, CP Optimizer will not notice and behavior is undefined.
When CP Optimizer prints a log to a terminal, then it expects that the terminal is using UTF-8 encoding. Otherwise, if identifiers in the CPO file use non-ASCII characters, then the log could be unreadable.