You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Развести имена в анонимных пространствах имён под unity-сборку MSVC
Сборка под Windows падала на переопределении kSidePadding и kGuardMs. У MSVC
для Throne включён UNITY_BUILD: файлы склеиваются в одну единицу трансляции, и
анонимные namespace из разных файлов сливаются в один. Уникальность имён в них
приходится держать на уровне проекта, а не файла.
На macOS и Linux unity-сборки нет, поэтому локально это не всплывало — только
в CI. Компилятор к тому же останавливается на первых ошибках, так что чинить
надо было не два имени, а все: столкновений было шесть, а переименовать
пришлось 43 константы, чтобы не поймать то же самое при другой раскладке
пакетов unity-сборки. Имена получили префикс по файлу.
Заодно добавлены заголовки под std::size, std::sort и std::shared_ptr: на
libc++ они приезжают транзитивно, MSVC строже.