Как стать автором
Обновить

Комментарии 7

Интересно мнение хабра: при ложном варнинге типа «присвоение в условии, может имелось в виду сравнение» лучше подавить его или переписать код так, чтобы сомнений у компилятора/анализатора не было, пускай это и потребует дополнительно строчки-другой кода и нескольких байт под дополнительную переменную.
А чем переписывание для компилятора принципиально отличается от подавления?

Изменение непосредственно кода против изменения каких-то метаданных о коде.

Есть вариант "подавить, сохранив читаемость", то есть подавить без директив #pragma. В известных мне компиляторах конкретно это предупреждение подавляется с помощью двойных скобок: if ((x = 5)) ...
Без дополнительных скобок: https://wandbox.org/permlink/kHKy1aBtQR5HIEqQ
С дополнительными скобками: https://wandbox.org/permlink/kyKM2SmKliw1L8qB
Предупреждения unused parameter/variable гасятся с помощью инструкции (void)&x;.

Этот вариант я отношу к "переписать код".

А где дополнительные переменные и строки кода?

"пускай это и потребует" означает, что может и не потребовать.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий