Количество вызовов va_arg превышает количество аргументов, переданных функции variadic
Этот дефект происходит когда количество вызовов va_arg превышает количество аргументов, переданных соответствующей функции variadic. Анализ повышает дефект только, когда функция variadic вызвана.
Слишком много призывов va_arg к текущему списку аргументов не повышают дефект когда:
Количество вызовов va_arg в variadic функция неопределенна. Например, если вызовы из внешнего источника.
va_list используемый в va_arg недопустимо.
Когда вы вызываете va_arg и существует никакой следующий аргумент, доступный в va_list, поведение не определено. Вызов va_arg может повредить данные или возвратить неожиданный результат.
Убедитесь, что вы передаете правильное количество аргументов к функции variadic.
| Группа: Программирование |
| Язык: C | C++ |
| Значение по умолчанию: На для рукописного кода, прочь для сгенерированного кода |
Синтаксис командной строки:
TOO_MANY_VA_ARG_CALLS |
| Удар: Средняя |
| ID CWE: 685 |
Find defects (-checkers) | Incorrect data type passed to va_arg | Invalid va_list argument