------- You are receiving this mail because: -------
You are on the CC list for the bug.
http://bugs.exim.org/show_bug.cgi?id=1295
--- Comment #11 from Christian Persch (GNOME) <chpe@???> 2012-10-10 11:09:47 ---
(In reply to comment #6)
> +#elif defined COMPILE_PCRE16 || defined COMPILE_PCRE32
> othercasechar = cc + (othercasebit >> 9);
> if ((othercasebit & 0x100) != 0)
> othercasebit = (othercasebit & 0xff) << 8;
> else
> othercasebit &= 0xff;
> -#endif
> -#endif
> +#endif /* COMPILE_PCRE[8|16|32] */
>
> I think that code was optimized for 16 bit code, and 32 bit requires a
> different implementation. Do we have character case pairs above 0xffff, where
> the two cases have only one bit difference, and that is bigger than 0x10000? I
> think that is unlikely, but for the sake of completeness you should implement
> this correctly.
So it turns out that up to and including unicode 6.2, there are *no* characters
outside the BMP where the character and another case (upper, lower, title) of
it differ only in 1 bit. So I wouldn't be able to test any code changes I'd
make here.... is it ok if I just add a comment here that this code might need
revisiting for COMPILE_PCRE32 once such a character outside the BMP exists?
--
Configure bugmail:
http://bugs.exim.org/userprefs.cgi?tab=email