Количество вызовов в va_arg
превышает количество аргументов, переданных в вариадную функцию
Этот дефект возникает, когда количество вызовов va_arg
превышает количество аргументов, переданных в соответствующую вариадную функцию. Анализ поднимает дефект только, когда вызывается вариадная функция.
Слишком много va_arg вызовов для текущего списка аргументов не вызывает дефекта, когда:
Количество вызовов в va_arg
внутри вариадная функция неопределенна. Для примера, если вызовы выполняются из внешнего источника.
The va_list
используется в va_arg
недопустимо.
Когда вы звоните va_arg
и нет следующего аргумента, доступного в va_list
, поведение не определено. Вызов va_arg
может повредить данные или вернуть неожиданный результат.
Убедитесь, что вы передаете правильное количество аргументов в вариадную функцию.
Группа: Программирование |
Язык: C | C++ |
По умолчанию: On для рукописного кода, off для сгенерированного кода |
Синтаксис командной строки
: TOO_MANY_VA_ARG_CALLS |
Влияние: Средний |
ИДЕНТИФИКАТОР CWE: 685 |