Я не могу использовать предварительно упакованные строковые библиотеки Unicode, такие как ICU, потому что они взрываются размер двоичного файла в безумной степени (это программа 200 КБ; ICU - 16 МБ +!).
Я уже использую встроенный строковый тип wchar_t
для всего, но я хочу убедиться, что я ' я не делаю глупостей в плане итераций на строках или тому подобное.
Существуют ли инструменты, подобные Fuzzers, для обеспечения безопасности, кроме Unicode? То есть бросать символы вне базовой многоязычной плоскости в мой код и гарантировать, что все обрабатывается правильно как UTF-16?
(О, и, очевидно, кроссплатформенное решение работает, хотя большинство кроссплатформенных вещей должны поддерживать оба UTF -8 и UTF-16)
РЕДАКТИРОВАТЬ : Также обратите внимание на вещи, которые менее очевидны, чем суррогатные пары UTF-16 - например, знаки ударения!