Я интегрируя код asn1c в проект Xcode В настоящее время я получаю эту ошибку:.DEBUG ошибка ожидается идентификатор или «(»
/asn1c/converter-sample.c:76:1: error: expected identifier or '('
DEBUG(const char *fmt, ...) {
^
Исходный код:
/* Debug output function */
static inline void
DEBUG(const char *fmt, ...) { // 76th line
va_list ap;
if(!opt_debug) return;
fprintf(stderr, "AD: ");
va_start(ap, fmt);
vfprintf(stderr, fmt, ap);
va_end(ap);
fprintf(stderr, "\n");
}
Какой способ исправить эта ошибка сборки?
Я столкнулся с подобными вопросами в StackOverflow, но не смог найти ответ, который мог бы мне помочь.
Возможно, что-то есть '#define DEBUG 1' или что-то подобное? –
@Ramis Плохая идея использовать все заглавные буквы для имен функций. Переименуйте функцию. Кажется, там определен макрос с тем же именем. Или используйте #undef DEBUG –
Как всегда в подобных случаях, прочитайте * предварительно обработанный код *, чтобы убедиться, что знаете, что видит компилятор. С gcc это опция -E. Вероятно, существует флаг «debug build», который устанавливает «DEBUG» в константу с использованием препроцессора. – unwind