Ошибка переноса исходного кода PLCrashReporter "Значение регистра не является константным выражением"

Я хотел бы интегрировать PLCrashReporter в мой проект статической библиотеки и создать.framework со встроенным.

До сих пор я следовал той же иерархии, импортируя код из проекта XCode исходного кода. Перетащите файлы в мой проект XCode. Многим файлам нужен флаг компоновщика, так как они не используют ARC, но я есть.

Нет, я застрял в проблеме, которую я не совсем понимаю, возможно, из-за моего низкого уровня ограниченного опыта, смешанного с Objective-C.

Таким образом, в файле PLCrashSignalHandler.mm есть переключатель с двумя кейсами, и оба прекращают компиляцию с ошибкой "Кейс-значение не является константным выражением".

switch ((uintptr_t) (next->value().action.sa_handler)) {
                case ((uintptr_t) SIG_IGN):
                    /* Ignored */
                    handled = true;
                    break;

                case ((uintptr_t) SIG_DFL):
                    /* Default handler should be run, be we have no mechanism to pass through to
                     * the default handler; mark the signal as unhandled. */
                    handled = false;
                    break;

                default:
                    /* Handler registered, execute it */
                    next->value().action.sa_handler(signo);
                    handled = true;
                    break;
            }

case ((uintptr_t) SIG_IGN): а также case ((uintptr_t) SIG_DFL): остановить сборку с вышеуказанной ошибкой.

Их исходный код правильно строит проект, поэтому мне любопытно, что мне здесь не хватает.

Благодарю.

0 ответов

Другие вопросы по тегам