По моему опыту, 9 раз из 10 раздражающих, трудно отследить сбои в сборке без отладки или отладки чего-либо, iPhone или иным образом, вызвано ошибкой управления памятью. Я бы положил деньги на вашу проблему, вызванную неправильным размещением или сохранением сообщения, или его отсутствием. Если вы еще не пробовали, включите статический анализатор в вашей конфигурации отладочной сборки (мой XCode обновляется прямо сейчас, но я считаю, что если вы ищете «analyzer» или «clang» в свойствах вашей сборки, вы должны найти соответствующие настройки) и посмотреть, если это указывает на что-то говорящее. Если этого не произойдет, вы можете использовать инструменты, чтобы помочь вам проверить наличие проблем, а также попытаться изолировать проблемную область в отладчике.
Это может помочь вам воспроизвести проблему в сборке, которой нет на самом деле, изменив конфигурацию отладки или продублировав ее, чтобы использовать другой набор флагов компилятора, который более точно согласуется с тем, что происходит в сборке выпуска ( Я не помню, какие различия находятся у меня в голове, но я бы предположил, что добавление «-O2» к вашим флагам компилятора поможет вам в этом.)