ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
3 мая
1237151 Топик полностью
Dingo (06.09.2022 10:19, просмотров: 287) ответил Dingo на Отладочный вывод в LwIP - как расшевелить? Больше дня потерял.
Что за х.. ерунда? LwIP 1.4.1, в lwipopts.h прописал #define LWIP_DEBUG 1 #define UDP_DEBUG LWIP_DBG_ON, есть в debug.h конструкция 
#ifdef LWIP_DEBUG
/** print debug message only if debug message type is enabled...
 *  AND is of correct type AND is at least LWIP_DBG_LEVEL
 */
#define LWIP_DEBUGF(debug, message) do { \
                               if ( \
                                   ((debug) & LWIP_DBG_ON) && \
                                   ((debug) & LWIP_DBG_TYPES_ON) && \
                                   ((s16_t)((debug) & LWIP_DBG_MASK_LEVEL) >= LWIP_DBG_MIN_LEVEL)) { \
                                 LWIP_PLATFORM_DIAG(message); \
                                 if ((debug) & LWIP_DBG_HALT) { \
                                   while(1); \
                                 } \
                               } \
                             } while(0)

#else  /* LWIP_DEBUG */
#define LWIP_DEBUGF(debug, message) 
#endif /* LWIP_DEBUG */

И собирается без предупреждений по ветке, где LWIP_DEBUG не определён. Но если я в этом же файле debug.h перед конструкцией вписываю

#define LWIP_DEBUG 101

тогда собирается по первой ветке условия, и пишет варнинг при сборке о переопределении. Только не говорите, что всё так и должно быть. :-/ А если всё же да - как надо?