Qt+MinGW x86: как отладить вылет в release-версии?
Программа стабильно вылетает на конкретной версии Qt (5.12.2 MinGW x86, так надо) и скомпилированная в release/LTO. Под отладкой полный порядок. Отключение LTO — полный порядок. На других версиях Qt полный порядок. У этого Qt есть две версии библиотек: например, Qt5Core.dll — для выпуска, Qt5Cored.dll — для отладки.
Подозрение на некорректную работу с beginUpdateData/endUpdateData.
Как лучше определить точное место, где случился вылет?
Можно сделать логирование работы в файл, и исходя из этого найти место падения программы. Затем проанализировать код и попробовать его исправить.
Можно попробовать запустить программу (release версию) из отладчика gdb и снять дамп памяти для последующего анализа или сделать так
Соберите release версию с отладочной информацией, запустите под отладчиком, при вылете отладчик активизируется в месте появления исключительной ситуации, сможете исследовать состояние программы.
Mercury13, Добавление отладочной информации только раздувает размер исполняемого файла, на код не влияет. Часто полезно оставлять отладочную информацию. Например в случае core dump в линуксе - можно больше информации получить в gdb, не имея исходников. Видел много достаточно крупных проектов, у которых -g используется в релизе.