#ios #xcode #poco-libraries
#iOS #xcode #poco-библиотеки
Вопрос:
Мое приложение использует стороннюю библиотеку, которая, в свою очередь, построена на библиотеке Poco. Библиотека poco включена в качестве скомпилированного объектного файла (.a). Теперь приложение работает должным образом в режиме отладки, но приводит к сбою в режиме выпуска.
Я смог отследить его до этой строки. Строка в качестве входных данных идентична в обоих режимах, но в режиме выпуска возвращается пустой объект (без исключения, просто объект с размером 0).
Poco::JSON::Parser parser;
try {
*object = parser.parse(jsonstr);
}
Это началось, когда мы переключились на XCode 12 для приложения и для компиляции Poco.
Я считаю, что это должны быть некоторые флаги оптимизации плюс ошибка в библиотеке, но как мне ее отследить? Особенно без отладки в режиме выпуска.
Есть идеи?
Комментарии:
1. Что произойдет, если вы прервете
parse
extract
вызовы and . Возможно, вас сбивает с толку какое-то неявное преобразование.2.
Var result = parser.parse(json);
Object::Ptr object = result.extract<Object::Ptr>();