Недопустимая директива предварительной обработки для #elseifdef в Xcode

Почему:

 #ifdef SOME_TARGET_FLAG     
      <some code here>
    #elseifdef SOME_ANOTHER_TARGET_FLAG
      <some another code here>
    #endif

создает "Недопустимая препроцессорная директива" ошибка компиляции препроцесса?

SOME_TARGET_FLAG и SOME_ANOTHER_TARGET_FLAG - это просто некоторые "Другие C-флаги", определенные в настройках целевой сборки (-D<FLAG_NAME> pattern).

Директива #elseifdef не поддерживается Xcode?

Ответы

Ответ 1

Является ли директива #elseifdef не поддерживаемой Xcode?

Это не так. Используйте это вместо:

#elif defined(SOME_ANOTHER_TARGET_FLAG)