Как лаконично написать макрос TODO?
Jan. 16th, 2020 12:22 amПочему-то у gcc нет опции _Pragma(GCC message). Пробую реализовать так:
В "чистовой" сборке работает, а вот в debug — нет (т.к. у меня в debug-сборке добавляется -Werror).
И как же быть? Как не забыть обо всех своих TODO'шках, чтобы во время сборки напоминания постоянно вылезали? Писать вручную
#pragma message "TODO: add very usefull feature"
лень... Да и TODO-макросы можно было бы скрывать в чистовых сборках.
UPD. Плохой все-таки из меня "гугольщик"! Стал уже писать вопрос на SO, как вылезли похожие, и среди них было как раз то, что мне нужно!
В общем, вот как:
Плохо я гуглил о _Pragma! Оказывается, не нужно там GCC ... писать.
P.S. Что-то давно я на stackexchange не заходил. "Карма" в стагнации...
#define DO_PRAGMA(x) _Pragma (#x) #define TODO(x) DO_PRAGMA(GCC warning #x)
В "чистовой" сборке работает, а вот в debug — нет (т.к. у меня в debug-сборке добавляется -Werror).
И как же быть? Как не забыть обо всех своих TODO'шках, чтобы во время сборки напоминания постоянно вылезали? Писать вручную
#pragma message "TODO: add very usefull feature"
лень... Да и TODO-макросы можно было бы скрывать в чистовых сборках.
UPD. Плохой все-таки из меня "гугольщик"! Стал уже писать вопрос на SO, как вылезли похожие, и среди них было как раз то, что мне нужно!
В общем, вот как:
#ifdef EBUG #define DO_PRAGMA(x) _Pragma (#x) #define TODO(x) DO_PRAGMA(message #x) #else #define TODO(x) #endif
Плохо я гуглил о _Pragma! Оказывается, не нужно там GCC ... писать.
P.S. Что-то давно я на stackexchange не заходил. "Карма" в стагнации...