[webkit-dev] Heads up: ICU source compatibility breakage in 59.1 release

Maciej Stachowiak mjs at apple.com
Tue May 2 15:45:02 PDT 2017


I agree, better to add private cast macros (which are no-ops on the appropriate version of ICU) to convert incoming/outgoing public API types, and leave the actual public API types alone.

> On May 2, 2017, at 10:40 AM, Myles C. Maxfield <mmaxfield at apple.com> wrote:
> 
> The fact that we use ICU is an implementation detail. It seems wrong to let this affect our public API.
> 
> —Myles
> 
>> On May 2, 2017, at 10:31 AM, Konstantin Tokarev <annulen at yandex.ru> wrote:
>> 
>> Hello,
>> 
>> ICU 59.1 release came out recently, featuring major source compatibility break. Notably, they've changed type of UChar to be char16_t, which does not allow automatic type conversion from unsigned short in C++ code.
>> 
>> Possible compilation fix is patch [1], however it changes definitions of JSChar and WKChar in public headers. Another problem is keeping compatibility with older ICU releases, that requires ICU version check in public headers.
>> 
>> Any thoughts how should it be resolved?
>> 
>> [1] https://git.archlinux.org/svntogit/packages.git/tree/trunk/icu59.patch?h=packages/webkit2gtk
>> 
>> -- 
>> Regards,
>> Konstantin
>> _______________________________________________
>> webkit-dev mailing list
>> webkit-dev at lists.webkit.org
>> https://lists.webkit.org/mailman/listinfo/webkit-dev
> 
> _______________________________________________
> webkit-dev mailing list
> webkit-dev at lists.webkit.org
> https://lists.webkit.org/mailman/listinfo/webkit-dev



More information about the webkit-dev mailing list