У меня возникла ситуация, когда #define в одном из заголовочных файлов нарушает объявление enum в другом заголовочном файле.
Используя -E
включите gcc
Я установил, что у меня
#define OFF 0
где-то.
Вопрос в том, как мне узнать где? Проект огромен, десятки подключаемых каталогов, сотни включаемых файлов. В конце концов я сделаю глобальный grep, но вопрос в том, есть ли способ спросить компилятор gcc
, где происходит #define? Это, очевидно, имеет эту информацию!
Обновление: спасибо не за одно, а за два решения - ТАК приходит.
Для справки, виновником была одна из библиотек клиента Sybase (ctlib, даже не dblib). Уч.