Paolo Bonzini <pbonz...@redhat.com> writes: > On 08/08/2018 14:03, Markus Armbruster wrote: >> + if (cp >= 0xD800 && cp <= 0xDBFF && !leading_surrogate >> + && ptr[1] == '\\' && ptr[2] == 'u') { >> + ptr += 2; >> + leading_surrogate = cp; >> + goto hex; >> + } >> + if (cp >= 0xDC00 && cp <= 0xDFFF && leading_surrogate) { >> + cp &= 0x3FF; >> + cp |= (leading_surrogate & 0x3FF) << 10; >> + cp += 0x010000; >> + } >> + > > The leading surrogate is discarded for \uD800\uCAFE, I think. Is this > desired?
Certainly not. I'll fix it. Thanks!