Мы используем куки, чтобы пользоваться сайтом было удобно.
Хорошо
to the top
menu mobile close menu
Проверка проектов
Дополнительная информация
toggle menu Оглавление

V754. The expression of 'foo(foo(x))' pattern is excessive or contains an error.

05 Май 2016

Анализатор обнаружил, что фактическим аргументом функции является вызов этой-же функции.

Пример некорректного кода:

char lower_ch = tolower(tolower(ch));

В этом примере второй вызов функции избыточен. Возможно в коде допущена опечатка и подразумевался вызов другой функции. Если ошибки нет, то следует убрать лишний вызов, так как подобное выражение выглядит подозрительно:

char lower_ch = tolower(ch);

Другой пример:

if (islower(islower(ch)))
  do_something();

Функция 'islower' возвращает значение типа int и может быть использовано в качестве аргумента к самой себе. Данное выражение содержит ошибку и не имеет практического смысла.