On Fri, Feb 16, 2001 at 08:44:26AM -0600, Jarkko Hietaniemi wrote: > > A string *must* be marked utf8 if was utf8-encoded and contained chars > > above 127. A string *may* be marked utf8 if it byte-encoded, but does > > not contain chars above 127. > > Your sentence is in opposition with our existing Unicode model and > implementation, which seems to be working rather nicely, so you must > have a complete alternative implementation in your backpocket. Let me slightly restate/enhance my other answer: a) there are two issues: how a flag is used, and the informal meaning we assign to this flag. The second should not contradict the first; b) The way the flag is currently used: 1) during operations which require bytes; 2) during operations which require utf8; 3) to chose a branch in polymorphic operations; For operations 2) and 3) "my" and "yours" meanings do not contradict the usage. For 1) - as far as I understand, the only operation which behaves as "1" is one type of pack(). Ilya