Для эмулятора вы должны также проверить x86_64.

аюсь реализовать пользовательский макрос активов (аналогично тому, что имеет assert.h), но я хочу иметь возможность продолжить выполнение после того, как получу и утвердлю.

Например, один такойASSERT реализация может быть:

#define ASSERT(expr) ((void)( (!!(expr)) || (__debugbreak(), 0)))

__debugbreak это встроенная функция компиляторов Microsoft, которая вставляет программную точку останова, эквивалентную_asm int 3 в х86. для iOS существуют разные способы реализации этого __debugbreak:

__asm__("int $3"); для х86.__asm__("bkpt #0"); для обычной руки.__asm__("brk #0"); для arm64__builtin_trap()raise(SIGTRAP)

но со всеми из них, когда мои утверждения утверждают, я не могу просто перешагнуть и продолжить то, что я могу сделать, работая с visual studio; когда что-то утверждается в моих сборках iOS, оно застревает в утверждении, и у меня нет выбора, кроме как прекратить, я даже не могу переместить указатель инструкции вручную и пропустить утверждение.

Можно ли реализовать на iOS утверждения, которые бы взломали отладчик и позволили бы мне продолжить выполнение?

Ответы на вопрос(1)

Ваш ответ на вопрос